本文整理汇总了PHP中resource_log函数的典型用法代码示例。如果您正苦于以下问题:PHP resource_log函数的具体用法?PHP resource_log怎么用?PHP resource_log使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了resource_log函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: HookAction_datesPagestoolscron_copy_hitcountAddplugincronjob
function HookAction_datesPagestoolscron_copy_hitcountAddplugincronjob()
{
global $lang, $action_dates_restrictfield, $action_dates_deletefield, $resource_deletion_state, $action_dates_reallydelete, $action_dates_email_admin_days, $email_notify, $email_from, $applicationname;
$allowable_fields = sql_array("select ref as value from resource_type_field where type in (4,6,10)");
# Check that this is a valid date field to use
if (in_array($action_dates_restrictfield, $allowable_fields)) {
$restrict_resources = sql_query("select resource, value from resource_data where resource_type_field = '{$action_dates_restrictfield}'");
$emailrefs = array();
foreach ($restrict_resources as $resource) {
$ref = $resource["resource"];
if ($action_dates_email_admin_days != "") {
$action_dates_email_admin_seconds = intval($action_dates_email_admin_days) * 60 * 60 * 24;
if (time() >= strtotime($resource["value"]) - $action_dates_email_admin_seconds && time() <= strtotime($resource["value"]) - $action_dates_email_admin_seconds + 86400) {
$emailrefs[] = $ref;
}
}
if (time() >= strtotime($resource["value"])) {
# Restrict access to the resource as date has been reached
$existing_access = sql_value("select access as value from resource where ref='{$ref}'", "");
if ($existing_access == 0) {
echo "restricting resource " . $ref . "\r\n";
sql_query("update resource set access=1 where ref='{$ref}'");
resource_log($ref, 'a', '', $lang['action_dates_restrict_logtext'], $existing_access, 1);
}
}
}
if (count($emailrefs) > 0) {
global $baseurl;
# Send email as the date is within the specified number of days
$subject = $lang['action_dates_email_subject'];
$message = str_replace("%%DAYS", $action_dates_email_admin_days, $lang['action_dates_email_text']) . "\r\n";
$message .= $baseurl . "?r=" . implode("\r\n" . $baseurl . "?r=", $emailrefs) . "\r\n";
$templatevars['message'] = $message;
echo "Sending email to " . $email_notify . "\r\n";
send_mail($email_notify, $subject, $message, $applicationname, $email_from, "emailexpiredresources", $templatevars, $applicationname);
}
}
if (in_array($action_dates_deletefield, $allowable_fields)) {
$delete_resources = sql_query("select resource, value from resource_data where resource_type_field = '{$action_dates_deletefield}'");
foreach ($delete_resources as $resource) {
$ref = $resource["resource"];
if (time() >= strtotime($resource["value"])) {
# Delete the resource as date has been reached
echo "deleting resource " . $ref . "\r\n";
if ($action_dates_reallydelete) {
delete_resource($ref);
} else {
if (!isset($resource_deletion_state)) {
$resource_deletion_state = 3;
}
sql_query("update resource set archive='" . $resource_deletion_state . "' where ref='" . $ref . "'");
}
# Remove the resource from any collections
sql_query("delete from collection_resource where resource='{$ref}'");
resource_log($ref, 'x', '', $lang['action_dates_delete_logtext']);
}
}
}
}
示例2: HookGrant_editEditeditbeforeheader
function HookGrant_editEditeditbeforeheader()
{
global $ref, $baseurl, $usergroup, $grant_edit_groups, $collection;
// Do we have access to do any of this, or is it a template
if (!in_array($usergroup, $grant_edit_groups) || $ref < 0) {
return;
}
// Check for Ajax POST to delete users
$grant_edit_action = getvalescaped("grant_edit_action", "");
if ($grant_edit_action != "") {
if ($grant_edit_action == "delete") {
$remove_user = escape_check(getvalescaped("remove_user", "", TRUE));
if ($remove_user != "") {
sql_query("delete from grant_edit where resource='{$ref}' and user={$remove_user}");
exit("SUCCESS");
}
}
exit("FAILED");
}
# If 'users' is specified (i.e. access is private) then rebuild users list
$users = getvalescaped("users", false);
if ($users != false) {
# Build a new list and insert
$users = resolve_userlist_groups($users);
$ulist = array_unique(trim_array(explode(",", $users)));
$urefs = sql_array("select ref value from user where username in ('" . join("','", $ulist) . "')");
if (count($urefs) > 0) {
$inserttext = array();
$grant_edit_expiry = getvalescaped("grant_edit_expiry", "");
foreach ($urefs as $uref) {
if ($grant_edit_expiry != "") {
$inserttext[] = $uref . ",'" . $grant_edit_expiry . "'";
} else {
$inserttext[] = $uref . ",NULL";
}
}
if ($collection != "") {
global $items;
foreach ($items as $collection_resource) {
sql_query("delete from grant_edit where resource='{$collection_resource}' and user in (" . implode(",", $urefs) . ")");
sql_query("insert into grant_edit(resource,user,expiry) values ({$collection_resource}," . join("),(" . $collection_resource . ",", $inserttext) . ")");
#log this
global $lang;
resource_log($collection_resource, 's', "", "Grant Edit - " . $users . " - " . $lang['expires'] . ": " . ($grant_edit_expiry != "" ? nicedate($grant_edit_expiry) : $lang['never']));
}
} else {
sql_query("delete from grant_edit where resource='{$ref}' and user in (" . implode(",", $urefs) . ")");
sql_query("insert into grant_edit(resource,user,expiry) values ({$ref}," . join("),(" . $ref . ",", $inserttext) . ")");
#log this
global $lang;
resource_log($ref, 's', "", "Grant Edit - " . $users . " - " . $lang['expires'] . ": " . ($grant_edit_expiry != "" ? nicedate($grant_edit_expiry) : $lang['never']));
}
}
}
return true;
}
示例3: HookAction_datesPagestoolscron_copy_hitcountAddplugincronjob
function HookAction_datesPagestoolscron_copy_hitcountAddplugincronjob()
{
global $lang, $action_dates_restrictfield,$action_dates_deletefield, $resource_deletion_state, $action_dates_reallydelete;
$allowable_fields=sql_array("select ref as value from resource_type_field where type in (4,6,10)");
# Check that this is a valid date field to use
if(in_array($action_dates_restrictfield, $allowable_fields))
{
$restrict_resources=sql_query("select resource, value from resource_data where resource_type_field = '$action_dates_restrictfield'");
foreach ($restrict_resources as $resource)
{
$ref=$resource["resource"];
if (time()>=strtotime($resource["value"]))
{
# Restrict access to the resource as date has been reached
$existing_access=sql_value("select access as value from resource where ref='$ref'","");
if($existing_access==0) # Only apply to resources that are currently open
{
echo "restricting resource " . $ref ."\r\n";
sql_query("update resource set access=1 where ref='$ref'");
resource_log($ref,'a','',$lang['action_dates_restrict_logtext'],$existing_access,1);
}
}
}
}
if(in_array($action_dates_deletefield, $allowable_fields))
{
$delete_resources=sql_query("select resource, value from resource_data where resource_type_field = '$action_dates_deletefield'");
foreach ($delete_resources as $resource)
{
$ref=$resource["resource"];
if (time()>=strtotime($resource["value"]))
{
# Delete the resource as date has been reached
echo "deleting resource " . $ref ."\r\n";
if ($action_dates_reallydelete)
{
delete_resource($ref);
}
else
{
if (!isset($resource_deletion_state)){$resource_deletion_state=3;}
sql_query("update resource set archive='" . $resource_deletion_state . "' where ref='" . $ref . "'");
}
# Remove the resource from any collections
sql_query("delete from collection_resource where resource='$ref'");
resource_log($ref,'x','',$lang['action_dates_delete_logtext']);
}
}
}
}
示例4: exit
if (!$speedtagging) {
exit("This function is not enabled.");
}
if (getval("save", "") != "") {
$ref = getvalescaped("ref", "", true);
$keywords = getvalescaped("keywords", "");
# support resource_type based tag fields
$resource_type = get_resource_data($ref);
$resource_type = $resource_type['resource_type'];
if (isset($speedtagging_by_type[$resource_type])) {
$speedtaggingfield = $speedtagging_by_type[$resource_type];
}
$oldval = get_data_by_field($ref, $speedtaggingfield);
update_field($ref, $speedtaggingfield, $keywords);
# Write this edit to the log.
resource_log($ref, 'e', $speedtaggingfield, "", $oldval, $keywords);
}
# append resource type restrictions based on 'T' permission
# look for all 'T' permissions and append to the SQL filter.
global $userpermissions;
$rtfilter = array();
$sql_join = "";
$sql_filter = "";
for ($n = 0; $n < count($userpermissions); $n++) {
if (substr($userpermissions[$n], 0, 1) == "T") {
$rt = substr($userpermissions[$n], 1);
if (is_numeric($rt)) {
$rtfilter[] = $rt;
}
}
}
示例5: extract_exif_comment
if (getval("no_exif", "") == "") {
extract_exif_comment($ref, $extension);
}
# extract text from documents (e.g. PDF, DOC).
global $extracted_text_field;
if (isset($extracted_text_field) && !$no_exif) {
extract_text($ref, $extension);
}
$done++;
# Add to collection?
if ($collection != "") {
$refs[] = $ref;
}
# Log this
daily_stat("Resource upload", $ref);
resource_log($ref, 'u', 0);
}
}
if (!$use_local) {
ftp_close($ftp);
}
switch ($done) {
case 0:
$summary_ok = $lang["resources_uploaded-0"];
break;
case 1:
$summary_ok = $lang["resources_uploaded-1"];
break;
default:
$summary_ok = str_replace("%done%", $done, $lang["resources_uploaded-n"]);
break;
示例6: wordwrap
if (trim($commentdata['comment']) != "") {
$text .= wordwrap($lang["comment"] . ": " . $commentdata['comment'] . "\r\n", 65);
}
if (trim($commentdata['rating']) != "") {
$text .= wordwrap($lang["rating"] . ": " . $commentdata['rating'] . "\r\n", 65);
}
$text .= "-----------------------------------------------------------------\r\n\r\n";
}
}
$path .= $p . "\r\n";
# build an array of paths so we can clean up any exiftool-modified files.
if ($tmpfile !== false && file_exists($tmpfile)) {
$deletion_array[] = $tmpfile;
}
daily_stat("Resource download", $ref);
resource_log($ref, 'd', 0);
# update hit count if tracking downloads only
if ($resource_hit_count_on_downloads) {
# greatest() is used so the value is taken from the hit_count column in the event that new_hit_count is zero to support installations that did not previously have a new_hit_count column (i.e. upgrade compatability).
sql_query("update resource set new_hit_count=greatest(hit_count,new_hit_count)+1 where ref='{$ref}'");
}
}
}
}
# Download and add external resources
$xt_resources = sql_query("select * from resourceconnect_collection_resources where collection='" . $collection . "'");
foreach ($xt_resources as $xt_resource) {
# Work out download URL
$url = $xt_resource["url"];
$url = str_replace("view.php", "download.php", $url);
$url .= "&size=" . $size;
示例7: get_nopreview_icon
$path = "../gfx/" . get_nopreview_icon($info["resource_type"], $ext, "thm");
}
# writing RS metadata to files: exiftool
if ($noattach == "" && $alternative == -1) {
$tmpfile = write_metadata($path, $ref);
if ($tmpfile !== false && file_exists($tmpfile)) {
$path = $tmpfile;
}
}
hook('modifydownloadfile');
$filesize = filesize_unlimited($path);
header("Content-Length: " . $filesize);
# Log this activity (download only, not preview)
if ($noattach == "") {
daily_stat("Resource download", $ref);
resource_log($ref, 'd', 0, $usagecomment, "", "", $usage, $size);
hook('moredlactions');
# update hit count if tracking downloads only
if ($resource_hit_count_on_downloads) {
# greatest() is used so the value is taken from the hit_count column in the event that new_hit_count is zero to support installations that did not previously have a new_hit_count column (i.e. upgrade compatability).
sql_query("update resource set new_hit_count=greatest(hit_count,new_hit_count)+1 where ref='{$ref}'");
}
# We compute a file name for the download.
$filename = $ref . $size . ($alternative > 0 ? "_" . $alternative : "") . "." . $ext;
if ($original_filenames_when_downloading) {
# Use the original filename.
if ($alternative > 0) {
# Fetch from the resource_alt_files alternatives table (this is an alternative file)
$origfile = get_alternative_file($ref, $alternative);
$origfile = get_data_by_field($ref, $filename_field) . "-" . $origfile["file_name"];
} else {
示例8: elseif
} elseif ($original && getval("slideshow", "") == "" && !$cropperestricted) {
// we are supposed to replace the original file
$origalttitle = $lang['priorversion'];
$origaltdesc = $lang['replaced'] . " " . strftime("%Y-%m-%d, %H:%M");
$origfilename = sql_value("select value from resource_data left join resource_type_field on resource_data.resource_type_field = resource_type_field.ref where resource = '{$ref}' and name = 'original_filename'", $ref . "_original.{$orig_ext}");
$origalt = add_alternative_file($ref, $origalttitle, $origaltdesc);
$origaltpath = get_resource_path($ref, true, "", true, $orig_ext, -1, 1, false, "", $origalt);
$mporig = round($origwidth * $origheight / 1000000, 2);
$filesizeorig = filesize_unlimited($originalpath);
rename($originalpath, $origaltpath);
$result = sql_query("update resource_alt_files set file_name='{$origfilename}',file_extension='{$orig_ext}',file_size = '{$filesizeorig}' where ref='{$origalt}'");
$neworigpath = get_resource_path($ref, true, '', false, $new_ext);
rename($newpath, $neworigpath);
$result = sql_query("update resource set file_extension = '{$new_ext}' where ref = '{$ref}' limit 1");
// update extension
resource_log($ref, 't', '', 'original transformed');
create_previews($ref, false, $orig_ext, false, false, $origalt);
create_previews($ref, false, $new_ext);
# delete existing resource_dimensions
sql_query("delete from resource_dimensions where resource='{$ref}'");
sql_query("insert into resource_dimensions (resource, width, height, file_size) values ('{$ref}', '{$newfilewidth}', '{$newfileheight}', '{$newfilesize}')");
# call remove annotations, since they will not apply to transformed
hook("removeannotations");
// remove the cached transform preview, since it will no longer be accurate
if (file_exists(get_temp_dir() . "/transform_plugin/pre_{$ref}.jpg")) {
unlink(get_temp_dir() . "/transform_plugin/pre_{$ref}.jpg");
}
redirect("pages/view.php?ref={$ref}");
exit;
} elseif (getval("slideshow", "") != "" && !$cropperestricted) {
# Produce slideshow.
示例9: create_previews
create_previews($alternative, false, $extension, false, false, $aref);
}
echo "SUCCESS";
exit;
}
if ($replace == "" && $replace_resource == "") {
# Standard upload of a new resource
$ref = copy_resource(0 - $userref);
# Copy from user template
# Add to collection?
if ($collection_add != "") {
add_resource_to_collection($ref, $collection_add);
}
# Log this
daily_stat("Resource upload", $ref);
resource_log($ref, "u", 0);
$status = upload_file($ref, getval("no_exif", "") != "", false, getval('autorotate', '') != '');
echo "SUCCESS: " . $ref;
exit;
} elseif ($replace == "" && $replace_resource != "") {
# Replacing an existing resource file
$status = upload_file($replace_resource, getval("no_exif", "") != "", false, getval('autorotate', '') != '');
echo "SUCCESS: {$replace_resource}";
exit;
} else {
# Overwrite an existing resource using the number from the filename.
# Extract the number from the filename
$plfilename = strtolower(str_replace(" ", "_", $plfilename));
$s = explode(".", $plfilename);
if (count($s) == 2) {
$ref = trim($s[0]);
示例10: copy_resource
function copy_resource($from,$resource_type=-1)
{
# Create a new resource, copying all data from the resource with reference $from.
# Note this copies only the data and not any attached file. It's very unlikely the
# same file would be in the system twice, however users may want to clone an existing resource
# to avoid reentering data if the resource is very similar.
# If $resource_type if specified then the resource type for the new resource will be set to $resource_type
# rather than simply copied from the $from resource.
# Check that the resource exists
if (sql_value("select count(*) value from resource where ref='$from'",0)==0) {return false;}
# copy joined fields to the resource column
$joins=get_resource_table_joins();
$joins_sql="";
foreach ($joins as $join){
$joins_sql.=",field$join ";
}
$add="";
# Work out the archive status
$archive=sql_value("select archive value from resource where ref='$from'",0);
if (!checkperm("e" . $archive))
{
# Find the right permission mode to use
for ($n=-2;$n<3;$n++)
{
if (checkperm("e" . $n)) {$archive=$n;break;}
}
}
# First copy the resources row
sql_query("insert into resource($add resource_type,creation_date,rating,archive,access,created_by $joins_sql) select $add" . (($resource_type==-1)?"resource_type":("'" . $resource_type . "'")) . ",now(),rating,'" . $archive . "',access,created_by $joins_sql from resource where ref='$from';");
$to=sql_insert_id();
# Copying a resource of the 'pending review' state? Notify, if configured.
$archive=sql_value("select archive value from resource where ref='$from'",0);
if ($archive==-1)
{
notify_user_contributed_submitted(array($to));
}
# Set that this resource was created by this user.
# This needs to be done if either:
# 1) The user does not have direct 'resource create' permissions and is therefore contributing using My Contributions directly into the active state
# 2) The user is contributiting via My Contributions to the standard User Contributed pre-active states.
global $userref;
global $always_record_resource_creator;
if ((!checkperm("c")) || $archive<0 || (isset($always_record_resource_creator) && $always_record_resource_creator))
{
# Update the user record
sql_query("update resource set created_by='$userref' where ref='$to'");
# Also add the user's username and full name to the keywords index so the resource is searchable using this name.
global $username,$userfullname;
add_keyword_mappings($to,$username . " " . $userfullname,-1);
}
# Now copy all data
sql_query("insert into resource_data(resource,resource_type_field,value) select '$to',rd.resource_type_field,rd.value from resource_data rd join resource r on rd.resource=r.ref join resource_type_field rtf on rd.resource_type_field=rtf.ref and (rtf.resource_type=r.resource_type or rtf.resource_type=999 or rtf.resource_type=0) where rd.resource='$from'");
# Copy relationships
sql_query("insert into resource_related(resource,related) select '$to',related from resource_related where resource='$from'");
# Copy access
sql_query("insert into resource_custom_access(resource,usergroup,access) select '$to',usergroup,access from resource_custom_access where resource='$from'");
# Set any resource defaults
set_resource_defaults($to);
# Reindex the resource so the resource_keyword entries are created
reindex_resource($to);
# Log this
daily_stat("Create resource",$to);
resource_log($to,'c',0);
hook("afternewresource", "", array($to));
return $to;
}
示例11: frame
}
# If requested, refresh the collection frame (for redirects from saves)
if (getval("refreshcollectionframe","")!="")
{
refresh_collection_frame();
}
# Update the hitcounts for the search keywords (if search specified)
# (important we fetch directly from $_GET and not from a cookie
$usearch=@$_GET["search"];
if ((strpos($usearch,"!")===false) && ($usearch!="")) {update_resource_keyword_hitcount($ref,$usearch);}
# Log this activity
daily_stat("Resource view",$ref);
if ($log_resource_views) {resource_log($ref,'v',0);}
if ($direct_download && !$save_as){
// check browser to see if forcing save_as
if (!$direct_download_allow_opera && strpos(strtolower($_SERVER["HTTP_USER_AGENT"]),"opera")!==false) {$save_as=true;}
if (!$direct_download_allow_ie7 && strpos(strtolower($_SERVER["HTTP_USER_AGENT"]),"msie 7.")!==false) {$save_as=true;}
if (!$direct_download_allow_ie8 && strpos(strtolower($_SERVER["HTTP_USER_AGENT"]),"msie 8.")!==false) {$save_as=true;}
}
# Show the header/sidebar
include "../include/header.php";
if ($metadata_report && isset($exiftool_path))
{
?>
<script src="<?php echo $baseurl_short?>lib/js/metadata_report.js" type="text/javascript"></script>
示例12: str_replace
if (file_exists($newpath) && filesize_unlimited($newpath) > 0) {
// success!
if (!rename($newpath, $path)) {
echo " " . str_replace("%res", $resource, $lang['error-unable-to-rename']) . "<br />\n";
$failcount++;
} else {
create_previews($resource, false, $new_ext);
// get final pixel dimensions of resulting file
$newfilesize = filesize_unlimited($path);
$newfiledimensions = getimagesize($path);
$newfilewidth = $newfiledimensions[0];
$newfileheight = $newfiledimensions[1];
# delete existing resource_dimensions
sql_query("delete from resource_dimensions where resource='{$resource}'");
sql_query("insert into resource_dimensions (resource, width, height, file_size) values ('{$resource}', '{$newfilewidth}', '{$newfileheight}', '{$newfilesize}')");
resource_log($resource, 't', '', 'batch transform');
echo "<img src='" . get_resource_path($resource, false, "thm", false, 'jpg', -1, 1) . "' /><br />\n";
echo " " . $lang['success'] . "<br />\n";
$successcount++;
}
} else {
echo " " . str_replace("%res", $resource, $lang['error-transform-failed']) . "<br />\n";
$failcount++;
}
}
?>
</div><?php
flush();
}
?>
<script>CollectionDivLoad("<?php
示例13: payment_set_complete
function payment_set_complete($collection)
{
# Mark items in the collection as paid so they can be downloaded.
sql_query("update collection_resource set purchase_complete=1 where collection='{$collection}'");
# For each resource, add an entry to the log to show it has been purchased.
$resources = sql_query("select * from collection_resource where collection='{$collection}'");
foreach ($resources as $resource) {
resource_log($resource["resource"], "p", 0, "", "", "", 0, $resource["purchase_size"], $resource["purchase_price"]);
}
return true;
}
示例14: copy_resource
function copy_resource($from, $resource_type = -1)
{
# Create a new resource, copying all data from the resource with reference $from.
# Note this copies only the data and not any attached file. It's very unlikely the
# same file would be in the system twice, however users may want to clone an existing resource
# to avoid reentering data if the resource is very similar.
# If $resource_type if specified then the resource type for the new resource will be set to $resource_type
# rather than simply copied from the $from resource.
# Check that the resource exists
if (sql_value("select count(*) value from resource where ref='{$from}'", 0) == 0) {
return false;
}
# copy joined fields to the resource column
$joins = get_resource_table_joins();
// Filter the joined columns so we only have the ones relevant to this resource type
$query = sprintf('
SELECT rtf.ref AS value
FROM resource_type_field AS rtf
INNER JOIN resource AS r ON (rtf.resource_type != r.resource_type AND rtf.resource_type != 0)
WHERE r.ref = "%s";
', $from);
$irrelevant_rtype_fields = sql_array($query);
$irrelevant_rtype_fields = array_values(array_intersect($joins, $irrelevant_rtype_fields));
$filtered_joins = array_values(array_diff($joins, $irrelevant_rtype_fields));
$joins_sql = "";
foreach ($filtered_joins as $join) {
$joins_sql .= ",field{$join} ";
}
$add = "";
# Determine if the user has access to the template archive status
$archive = sql_value("select archive value from resource where ref='{$from}'", 0);
if (!checkperm("e" . $archive)) {
# Find the right permission mode to use
for ($n = -2; $n < 3; $n++) {
if (checkperm("e" . $n)) {
$archive = $n;
break;
}
}
}
# First copy the resources row
sql_query("insert into resource({$add} resource_type,creation_date,rating,archive,access,created_by {$joins_sql}) select {$add}" . ($resource_type == -1 ? "resource_type" : "'" . $resource_type . "'") . ",now(),rating,'" . $archive . "',access,created_by {$joins_sql} from resource where ref='{$from}';");
$to = sql_insert_id();
# Set that this resource was created by this user.
# This needs to be done if either:
# 1) The user does not have direct 'resource create' permissions and is therefore contributing using My Contributions directly into the active state
# 2) The user is contributiting via My Contributions to the standard User Contributed pre-active states.
global $userref;
global $always_record_resource_creator;
if (!checkperm("c") || $archive < 0 || isset($always_record_resource_creator) && $always_record_resource_creator) {
# Update the user record
sql_query("update resource set created_by='{$userref}' where ref='{$to}'");
# Also add the user's username and full name to the keywords index so the resource is searchable using this name.
global $username, $userfullname;
add_keyword_mappings($to, $username . " " . $userfullname, -1);
}
# Now copy all data
sql_query("insert into resource_data(resource,resource_type_field,value) select '{$to}',rd.resource_type_field,rd.value from resource_data rd join resource r on rd.resource=r.ref join resource_type_field rtf on rd.resource_type_field=rtf.ref and (rtf.resource_type=r.resource_type or rtf.resource_type=999 or rtf.resource_type=0) where rd.resource='{$from}'");
# Copy relationships
sql_query("insert into resource_related(resource,related) select '{$to}',related from resource_related where resource='{$from}'");
# Copy access
sql_query("insert into resource_custom_access(resource,usergroup,access) select '{$to}',usergroup,access from resource_custom_access where resource='{$from}'");
# Set any resource defaults
set_resource_defaults($to);
# Autocomplete any blank fields.
autocomplete_blank_fields($to);
# Reindex the resource so the resource_keyword entries are created
reindex_resource($to);
# Copying a resource of the 'pending review' state? Notify, if configured.
global $send_collection_to_admin;
if ($archive == -1 && !$send_collection_to_admin) {
notify_user_contributed_submitted(array($to));
}
# Log this
daily_stat("Create resource", $to);
resource_log($to, 'c', 0);
hook("afternewresource", "", array($to));
return $to;
}
示例15: HookImagestreamUpload_pluploadInitialuploadprocessing
//.........这里部分代码省略.........
$deletion_array[] = $imagestream_workingfiles . DIRECTORY_SEPARATOR . "imagestream" . $filenumber . ".jpg";
$output = run_command($runcommand);
debug("processed file" . $filenumber . ": " . $imagestream_file . "\r\n");
debug("Image index: " . $imageindex . ". file count: " . count($imagestream_filelist));
if ($filenumber == 00) {
$snapshotsize = getimagesize($imagestream_workingfiles . DIRECTORY_SEPARATOR . "imagestream" . $filenumber . ".jpg");
list($width, $height) = $snapshotsize;
# Frame size must be a multiple of two
if ($width % 2) {
$width++;
}
if ($height % 2) {
$height++;
}
}
if ($imageindex == count($imagestream_filelist) - 1) {
$additionalfile = $filenumber + 1;
$additionalfile = sprintf("%03d", $additionalfile);
copy($imagestream_workingfiles . DIRECTORY_SEPARATOR . "imagestream" . $filenumber . ".jpg", $imagestream_workingfiles . DIRECTORY_SEPARATOR . "imagestream" . $additionalfile . ".jpg");
$deletion_array[] = $imagestream_workingfiles . DIRECTORY_SEPARATOR . "imagestream" . $additionalfile . ".jpg";
}
$filenumber++;
}
#end of loop for each uploadedfile
$imageindex++;
}
#Add the resource and move this zip file, set extension
# Add to collection?
if ($collection_add != "") {
add_resource_to_collection($ref, $collection_add);
}
# Log this
daily_stat("Resource upload", $ref);
resource_log($ref, "u", 0);
#Change this!!!!!!!!!!!
#$status=upload_file($ref,true,false,false));
if (!$config_windows) {
@chmod($imagestreamzippath, 0777);
}
# Store extension in the database and update file modified time.
sql_query("update resource set file_extension='zip',preview_extension='zip',file_modified=now(), has_image=0 where ref='{$ref}'");
#update_field($ref,$filename_field,$filename);
update_disk_usage($ref);
# create the mp4 version
# Add a new alternative file
$aref = add_alternative_file($ref, "MP4 version");
$imagestreamqtfile = get_resource_path($ref, true, "", false, "mp4", -1, 1, false, "", $aref);
$shell_exec_cmd = $ffmpeg_fullpath . " -loglevel panic -y -r " . $imagestream_transitiontime . " -i " . $imagestream_workingfiles . DIRECTORY_SEPARATOR . "imagestream%3d.jpg -r " . $imagestream_transitiontime . " -s {$width}x{$height} " . $imagestreamqtfile;
echo "Running command: " . $shell_exec_cmd;
if ($config_windows) {
$shell_exec_cmd = $ffmpeg_fullpath . " -loglevel panic -y -r " . $imagestream_transitiontime . " -i " . $imagestream_workingfiles . DIRECTORY_SEPARATOR . "imagestream%%3d.jpg -r " . $imagestream_transitiontime . " -s {$width}x{$height} " . $imagestreamqtfile;
file_put_contents(get_temp_dir() . DIRECTORY_SEPARATOR . "imagestreammp4" . $session_hash . ".bat", $shell_exec_cmd);
$shell_exec_cmd = get_temp_dir() . DIRECTORY_SEPARATOR . "imagestreammp4" . $session_hash . ".bat";
$deletion_array[] = $shell_exec_cmd;
}
run_command($shell_exec_cmd);
debug("DEBUG created slideshow MP4 video");
if (!$config_windows) {
@chmod($imagestreamqtfile, 0777);
}
$file_size = @filesize_unlimited($imagestreamqtfile);
# Save alternative file data.
sql_query("update resource_alt_files set file_name='quicktime.mp4',file_extension='mp4',file_size='" . $file_size . "',creation_date=now() where resource='{$ref}' and ref='{$aref}'");
#create the FLV preview as per normal video processing if possible?
if ($height < $ffmpeg_preview_min_height) {
$height = $ffmpeg_preview_min_height;