Vergleich inc/functions_upload.php - 1.6.3 - 1.6.10

  Keine Änderungen   Hinzugefügt   Modifiziert   Entfernt
Zeile 6Zeile 6
 * Website: http://mybb.com
* License: http://mybb.com/about/license
*

 * Website: http://mybb.com
* License: http://mybb.com/about/license
*

 * $Id: functions_upload.php 5380 2011-02-21 12:04:43Z Tomm $

 * $Id$

 */



 */



Zeile 330Zeile 330
		"width" => intval($img_dimensions[0]),
"height" => intval($img_dimensions[1])
);

		"width" => intval($img_dimensions[0]),
"height" => intval($img_dimensions[1])
);

	$plugins->run_hooks_by_ref("upload_avatar_end", $ret);

	$ret = $plugins->run_hooks("upload_avatar_end", $ret);

	return $ret;
}


	return $ret;
}


Zeile 346Zeile 346
	global $db, $theme, $templates, $posthash, $pid, $tid, $forum, $mybb, $lang, $plugins, $cache;

$posthash = $db->escape_string($mybb->input['posthash']);

	global $db, $theme, $templates, $posthash, $pid, $tid, $forum, $mybb, $lang, $plugins, $cache;

$posthash = $db->escape_string($mybb->input['posthash']);

 
	$pid = intval($pid);


if(isset($attachment['error']) && $attachment['error'] != 0)
{


if(isset($attachment['error']) && $attachment['error'] != 0)
{

Zeile 413Zeile 414
			return $ret;
}
}

			return $ret;
}
}

 

// Gather forum permissions
$forumpermissions = forum_permissions($forum['fid']);


// Check if an attachment with this name is already in the post


// Check if an attachment with this name is already in the post

	$query = $db->simple_select("attachments", "*", "filename='".$db->escape_string($attachment['name'])."' AND (posthash='$posthash' OR (pid='".intval($pid)."' AND pid!='0'))");









	if($pid != 0)
{
$uploaded_query = "pid='{$pid}'";
}
else
{
$uploaded_query = "posthash='{$posthash}'";
}
$query = $db->simple_select("attachments", "*", "filename='".$db->escape_string($attachment['name'])."' AND ".$uploaded_query);

	$prevattach = $db->fetch_array($query);
if($prevattach['aid'] && $update_attachment == false)
{

	$prevattach = $db->fetch_array($query);
if($prevattach['aid'] && $update_attachment == false)
{

 
		if(!$mybb->usergroup['caneditattachments'] && !$forumpermissions['caneditattachments'])
{
$ret['error'] = $lang->error_alreadyuploaded_perm;
return $ret;
}


		$ret['error'] = $lang->error_alreadyuploaded;
return $ret;
}


		$ret['error'] = $lang->error_alreadyuploaded;
return $ret;
}


	// Check if the attachment directory (YYYYMM) exists, if not, create it
$month_dir = gmdate("Ym");
if(!@is_dir($mybb->settings['uploadspath']."/".$month_dir))

	$month_dir = '';
if(ini_get('safe_mode') != 1 && strtolower(ini_get('safe_mode')) != 'on')


	{

	{

		@mkdir($mybb->settings['uploadspath']."/".$month_dir);
// Still doesn't exist - oh well, throw it in the main directory

		// Check if the attachment directory (YYYYMM) exists, if not, create it
$month_dir = gmdate("Ym");

		if(!@is_dir($mybb->settings['uploadspath']."/".$month_dir))
{

		if(!@is_dir($mybb->settings['uploadspath']."/".$month_dir))
{

			$month_dir = '';






			@mkdir($mybb->settings['uploadspath']."/".$month_dir);
// Still doesn't exist - oh well, throw it in the main directory
if(!@is_dir($mybb->settings['uploadspath']."/".$month_dir))
{
$month_dir = '';
}

		}

		}

	}

// If safe_mode is enabled, don't attempt to use the monthly directories as it won't work
if(ini_get('safe_mode') == 1 || strtolower(ini_get('safe_mode')) == 'on')
{
$month_dir = '';

 
	}

// All seems to be good, lets move the attachment!
$filename = "post_".$mybb->user['uid']."_".TIME_NOW."_".md5(random_str()).".attach";

	}

// All seems to be good, lets move the attachment!
$filename = "post_".$mybb->user['uid']."_".TIME_NOW."_".md5(random_str()).".attach";

	

	

	$file = upload_file($attachment, $mybb->settings['uploadspath']."/".$month_dir, $filename);

// Failed to create the attachment in the monthly directory, just throw it in the main directory

	$file = upload_file($attachment, $mybb->settings['uploadspath']."/".$month_dir, $filename);

// Failed to create the attachment in the monthly directory, just throw it in the main directory

Zeile 481Zeile 497

// Generate the array for the insert_query
$attacharray = array(


// Generate the array for the insert_query
$attacharray = array(

		"pid" => intval($pid),

		"pid" => $pid,

		"posthash" => $posthash,
"uid" => $mybb->user['uid'],
"filename" => $db->escape_string($file['original_filename']),

		"posthash" => $posthash,
"uid" => $mybb->user['uid'],
"filename" => $db->escape_string($file['original_filename']),

Zeile 562Zeile 578
		}
}
if($forum['modattachments'] == 1 && !is_moderator($forum['fid'], "", $mybb->user['uid']))

		}
}
if($forum['modattachments'] == 1 && !is_moderator($forum['fid'], "", $mybb->user['uid']))

	{

	{

		$attacharray['visible'] = 0;

		$attacharray['visible'] = 0;

	}
else

	}
else

	{
$attacharray['visible'] = 1;
}


	{
$attacharray['visible'] = 1;
}


	$plugins->run_hooks_by_ref("upload_attachment_do_insert", $attacharray);


	$attacharray = $plugins->run_hooks("upload_attachment_do_insert", $attacharray);


	if($prevattach['aid'] && $update_attachment == true)

	if($prevattach['aid'] && $update_attachment == true)

	{

	{

		unset($attacharray['downloads']); // Keep our download count if we're updating an attachment
$db->update_query("attachments", $attacharray, "aid='".$db->escape_string($prevattach['aid'])."'");
$aid = $prevattach['aid'];

		unset($attacharray['downloads']); // Keep our download count if we're updating an attachment
$db->update_query("attachments", $attacharray, "aid='".$db->escape_string($prevattach['aid'])."'");
$aid = $prevattach['aid'];

Zeile 583Zeile 599
		$aid = $db->insert_query("attachments", $attacharray);
}


		$aid = $db->insert_query("attachments", $attacharray);
}


	if($tid)

	if($pid)

	{
update_thread_counters($tid, array("attachmentcount" => "+1"));
}

	{
update_thread_counters($tid, array("attachmentcount" => "+1"));
}

Zeile 627Zeile 643
	$upload['path'] = $path;
$upload['type'] = $file['type'];
$upload['size'] = $file['size'];

	$upload['path'] = $path;
$upload['type'] = $file['type'];
$upload['size'] = $file['size'];

	$plugins->run_hooks_by_ref("upload_file_end", $upload);

	$upload = $plugins->run_hooks("upload_file_end", $upload);

	return $upload;
}
?>

	return $upload;
}
?>