Page Menu
Home
Code
Search
Configure Global Search
Log In
Files
F884080
smarty_internal_resource_file.php
No One
Temporary
Actions
Download File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Award Token
Flag For Later
Size
2 KB
Subscribers
None
smarty_internal_resource_file.php
View Options
<?php
/**
* Smarty Internal Plugin Resource File
*
* @package Smarty
* @subpackage TemplateResources
* @author Uwe Tews
* @author Rodney Rehm
*/
/**
* Smarty Internal Plugin Resource File
*
* Implements the file system as resource for Smarty templates
*
* @package Smarty
* @subpackage TemplateResources
*/
class
Smarty_Internal_Resource_File
extends
Smarty_Resource
{
/**
* populate Source Object with meta data from Resource
*
* @param Smarty_Template_Source $source source object
* @param Smarty_Internal_Template $_template template object
*/
public
function
populate
(
Smarty_Template_Source
$source
,
Smarty_Internal_Template
$_template
=
null
)
{
$source
->
filepath
=
$this
->
buildFilepath
(
$source
,
$_template
);
if
(
$source
->
filepath
!==
false
)
{
if
(
is_object
(
$source
->
smarty
->
security_policy
))
{
$source
->
smarty
->
security_policy
->
isTrustedResourceDir
(
$source
->
filepath
);
}
$source
->
uid
=
sha1
(
$source
->
filepath
);
if
(
$source
->
smarty
->
compile_check
&&
!
isset
(
$source
->
timestamp
))
{
$source
->
timestamp
=
@
filemtime
(
$source
->
filepath
);
$source
->
exists
=
!!
$source
->
timestamp
;
}
}
}
/**
* populate Source Object with timestamp and exists from Resource
*
* @param Smarty_Template_Source $source source object
*/
public
function
populateTimestamp
(
Smarty_Template_Source
$source
)
{
$source
->
timestamp
=
@
filemtime
(
$source
->
filepath
);
$source
->
exists
=
!!
$source
->
timestamp
;
}
/**
* Load template's source from file into current template object
*
* @param Smarty_Template_Source $source source object
* @return string template source
* @throws SmartyException if source cannot be loaded
*/
public
function
getContent
(
Smarty_Template_Source
$source
)
{
if
(
$source
->
timestamp
)
{
return
file_get_contents
(
$source
->
filepath
);
}
if
(
$source
instanceof
Smarty_Config_Source
)
{
throw
new
SmartyException
(
"Unable to read config {$source->type} '{$source->name}'"
);
}
throw
new
SmartyException
(
"Unable to read template {$source->type} '{$source->name}'"
);
}
/**
* Determine basename for compiled filename
*
* @param Smarty_Template_Source $source source object
* @return string resource's basename
*/
public
function
getBasename
(
Smarty_Template_Source
$source
)
{
$_file
=
$source
->
name
;
if
((
$_pos
=
strpos
(
$_file
,
']'
))
!==
false
)
{
$_file
=
substr
(
$_file
,
$_pos
+
1
);
}
return
basename
(
$_file
);
}
}
?>
File Metadata
Details
Attached
Mime Type
text/x-php
Expires
Sun, Apr 6, 10:24 (1 w, 6 d ago)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
25971
Default Alt Text
smarty_internal_resource_file.php (2 KB)
Attached To
rZED Zed
Event Timeline
Log In to Comment