I would like to be able to have the file size/extension limits not apply to admins. Is this easy to do? There's times I need to upload a couple of meg zip or something, but I don't want to give the world access to do that. I've been changing the limit, uploading the file, then changing it back.
Post.php, find:
if (!empty($modSettings['attachmentSizeLimit']) && $_FILES['attachment']['size'][$n] > $modSettings['attachmentSizeLimit'] * 1024)
Replace:
if (!$user_info['is_admin'] && !empty($modSettings['attachmentSizeLimit']) && $_FILES['attachment']['size'][$n] > $modSettings['attachmentSizeLimit'] * 1024)
-[Unknown]
Perfect! Thanks
This should be in tips and tricks ;).
Quote from: Ben_S on September 27, 2004, 09:47:27 AM
This should be in tips and tricks ;).
Well, can you move it there?
Would if I could, my post was a suggestion for someone with move powers, I dont have them :(.
[edit]
Someone did ;D
[/edit]
I still can't upload anything over 192.
Same here, comes back with
Your file is too large. The maximum attachment size allowed is 192 KB.
My max attachment setting is 100KB so dunno where it gets 192 KB from.
Maybe it's your per-post limit?
-[Unknown]
Not sure what you mean by per post limit?
Please consult your attachment settings.
-[Unknown]
Doh, never seen that one before. thats two new things I've learnt today.
Have now set it suitably high, thanks for that.
Quote from: [Unknown] on September 26, 2004, 10:58:13 PM
Post.php, find:
I've just found this topic, so apologies for the late question.
I can find Post.template.php but can't find Post.php Which sub-directory would it be in?
TIA
How do I modify files? (http://www.simplemachines.org/community/index.php?topic=24110.0)
-[Unknown]
I'm watching this topic, as I couldn't find "Post.php" ANYWHERE...
I'm very new to SMF forums... ???
Quote from: seammer on July 04, 2005, 06:00:36 PMI couldn't find "Post.php" ANYWHERE...
It's in your Sources directory.
Quote from: seammer on July 04, 2005, 06:00:36 PM
I'm watching this topic, as I couldn't find "Post.php" ANYWHERE...
I'm very new to SMF forums... ???
Post.php is in the folder /Sources
i thought that if we should edit it, it should not just be for the over-all attachment limit, but edit more of the code below that, to allow more permissions to the admin.
would this be alright?
// Is the file too big?
if (!empty($modSettings['attachmentSizeLimit']) && $_FILES['attachment']['size'][$n] > $modSettings['attachmentSizeLimit'] * 1024)
fatal_lang_error('smf122', false, array($modSettings['attachmentSizeLimit']));
// Have we reached the maximum number of files we are allowed?
$quantity++;
if (!$user_info['is_admin'] && !empty($modSettings['attachmentNumPerPostLimit']) && $quantity > $modSettings['attachmentNumPerPostLimit'])
fatal_lang_error('attachments_limit_per_post', false, array($modSettings['attachmentNumPerPostLimit']));
// Check the total upload size for this post...
$total_size += $_FILES['attachment']['size'][$n];
if (!$user_info['is_admin'] && !empty($modSettings['attachmentPostLimit']) && $total_size > $modSettings['attachmentPostLimit'] * 1024)
fatal_lang_error('smf122', false, array($modSettings['attachmentPostLimit']));
if (!$user_info['is_admin'] && !empty($modSettings['attachmentCheckExtensions']))
{
if (!in_array(strtolower(substr(strrchr($_FILES['attachment']['name'][$n], '.'), 1)), explode(',', strtolower($modSettings['attachmentExtensions']))))
fatal_error($_FILES['attachment']['name'][$n] . '.<br />' . $txt['smf123'] . ' ' . $modSettings['attachmentExtensions'] . '.', false);
}
if (!$user_info['is_admin'] && !empty($modSettings['attachmentDirSizeLimit']))
{
// Make sure the directory isn't full.
$dirSize = 0;
$dir = @opendir($modSettings['attachmentUploadDir']) or fatal_lang_error('smf115b');
while ($file = readdir($dir))
{
if (substr($file, 0, -1) == '.')
continue;
$dirSize += filesize($modSettings['attachmentUploadDir'] . '/' . $file);
}
closedir($dir);
// Too big! Maybe you could zip it or something...
if ($_FILES['attachment']['size'][$n] + $dirSize > $modSettings['attachmentDirSizeLimit'] * 1024)
fatal_lang_error('smf126');
}
// Find the filename, strip the dir.
$destName = basename($_FILES['attachment']['name'][$n]);
// Check if the file already exists.... (for those who do not encrypt their filenames...)
if (!$user_info['is_admin'] && !empty($modSettings['attachmentEncryptFilenames']))
{
Quote from: malinaobenny on August 27, 2005, 08:23:55 AM
i thought that if we should edit it, it should not just be for the over-all attachment limit, but edit more of the code below that, to allow more permissions to the admin.
would this be alright?
// Is the file too big?
if (!empty($modSettings['attachmentSizeLimit']) && $_FILES['attachment']['size'][$n] > $modSettings['attachmentSizeLimit'] * 1024)
fatal_lang_error('smf122', false, array($modSettings['attachmentSizeLimit']));
// Have we reached the maximum number of files we are allowed?
$quantity++;
if (!$user_info['is_admin'] && !empty($modSettings['attachmentNumPerPostLimit']) && $quantity > $modSettings['attachmentNumPerPostLimit'])
fatal_lang_error('attachments_limit_per_post', false, array($modSettings['attachmentNumPerPostLimit']));
// Check the total upload size for this post...
$total_size += $_FILES['attachment']['size'][$n];
if (!$user_info['is_admin'] && !empty($modSettings['attachmentPostLimit']) && $total_size > $modSettings['attachmentPostLimit'] * 1024)
fatal_lang_error('smf122', false, array($modSettings['attachmentPostLimit']));
if (!$user_info['is_admin'] && !empty($modSettings['attachmentCheckExtensions']))
{
if (!in_array(strtolower(substr(strrchr($_FILES['attachment']['name'][$n], '.'), 1)), explode(',', strtolower($modSettings['attachmentExtensions']))))
fatal_error($_FILES['attachment']['name'][$n] . '.<br />' . $txt['smf123'] . ' ' . $modSettings['attachmentExtensions'] . '.', false);
}
if (!$user_info['is_admin'] && !empty($modSettings['attachmentDirSizeLimit']))
{
// Make sure the directory isn't full.
$dirSize = 0;
$dir = @opendir($modSettings['attachmentUploadDir']) or fatal_lang_error('smf115b');
while ($file = readdir($dir))
{
if (substr($file, 0, -1) == '.')
continue;
$dirSize += filesize($modSettings['attachmentUploadDir'] . '/' . $file);
}
closedir($dir);
// Too big! Maybe you could zip it or something...
if ($_FILES['attachment']['size'][$n] + $dirSize > $modSettings['attachmentDirSizeLimit'] * 1024)
fatal_lang_error('smf126');
}
// Find the filename, strip the dir.
$destName = basename($_FILES['attachment']['name'][$n]);
// Check if the file already exists.... (for those who do not encrypt their filenames...)
if (!$user_info['is_admin'] && !empty($modSettings['attachmentEncryptFilenames']))
{
I was thinking of doing the exact same thing .. I don't see why it wouldn't work .. guess I'm about to find out ;)
though it seems you didn't add the string
!$user_info['is_admin'] &&
to the first part of the code
// Is the file too big?
if (!empty($modSettings['attachmentSizeLimit']) && $_FILES['attachment']['size'][$n] > $modSettings['attachmentSizeLimit'] * 1024)
fatal_lang_error('smf122', false, array($modSettings['attachmentSizeLimit']));
Quote from: [Unknown] on September 26, 2004, 10:58:13 PM
Post.php, find:
if (!empty($modSettings['attachmentSizeLimit']) && $_FILES['attachment']['size'][$n] > $modSettings['attachmentSizeLimit'] * 1024)
Replace:
if (!$user_info['is_admin'] && !empty($modSettings['attachmentSizeLimit']) && $_FILES['attachment']['size'][$n] > $modSettings['attachmentSizeLimit'] * 1024)
So what's changed here over the past 2+ years that might stop this working?
NB I'm aware of the following:
Quote from: [Unknown] on October 17, 2004, 04:02:35 PM
Maybe it's your per-post limit?
But still can't attach a 600K image with per post limit of 2000K and max attachment size of 200K 'disabled' as suggested above for admins (so that line at least remains unchanged since 2004!) and suspect there may now be some additional limiting factor?
Hi, I have the 1.1.2 version and this Tips and Tricks doesn't runs for me...
Please, could you help me? Thanks a lot "!"
Quote from: bodyboard_jerez on May 28, 2007, 11:04:29 AM
Hi, I have the 1.1.2 version and this Tips and Tricks doesn't runs for me...
Please, could you help me? Thanks a lot "!"
Somebody does this trick runs on 1.1.2 version? How please?
For SMF 2.02 to exempt the admin from upload size limits and file extension checks: Basically just add !$user_info['is_admin'] && to all these checks...
In Sources/Post.php:
FIND:
if (!empty($modSettings['attachmentSizeLimit']) && $_FILES['attachment']['size'][$n] > $modSettings['attachmentSizeLimit'] * 1024)
fatal_lang_error('file_too_big', false, array($modSettings['attachmentSizeLimit']));
$quantity++;
if (!empty($modSettings['attachmentNumPerPostLimit']) && $quantity > $modSettings['attachmentNumPerPostLimit'])
fatal_lang_error('attachments_limit_per_post', false, array($modSettings['attachmentNumPerPostLimit']));
$total_size += $_FILES['attachment']['size'][$n];
if (!empty($modSettings['attachmentPostLimit']) && $total_size > $modSettings['attachmentPostLimit'] * 1024)
fatal_lang_error('file_too_big', false, array($modSettings['attachmentPostLimit']));
if (!empty($modSettings['attachmentCheckExtensions']))
{
if (!in_array(strtolower(substr(strrchr($_FILES['attachment']['name'][$n], '.'), 1)), explode(',', strtolower($modSettings['attachmentExtensions']))))
fatal_error($_FILES['attachment']['name'][$n] . '.<br />' . $txt['cant_upload_type'] . ' ' . $modSettings['attachmentExtensions'] . '.', false);
}
REPLACE with:
if (!$user_info['is_admin'] && !empty($modSettings['attachmentSizeLimit']) && $_FILES['attachment']['size'][$n] > $modSettings['attachmentSizeLimit'] * 1024)
fatal_lang_error('file_too_big', false, array($modSettings['attachmentSizeLimit']));
$quantity++;
if (!$user_info['is_admin'] && !empty($modSettings['attachmentNumPerPostLimit']) && $quantity > $modSettings['attachmentNumPerPostLimit'])
fatal_lang_error('attachments_limit_per_post', false, array($modSettings['attachmentNumPerPostLimit']));
$total_size += $_FILES['attachment']['size'][$n];
if (!$user_info['is_admin'] && !empty($modSettings['attachmentPostLimit']) && $total_size > $modSettings['attachmentPostLimit'] * 1024)
fatal_lang_error('file_too_big', false, array($modSettings['attachmentPostLimit']));
if (!$user_info['is_admin'] && !empty($modSettings['attachmentCheckExtensions']))
{
if (!in_array(strtolower(substr(strrchr($_FILES['attachment']['name'][$n], '.'), 1)), explode(',', strtolower($modSettings['attachmentExtensions']))))
fatal_error($_FILES['attachment']['name'][$n] . '.<br />' . $txt['cant_upload_type'] . ' ' . $modSettings['attachmentExtensions'] . '.', false);
}
FIND:
// Check the total upload size for this post...
$total_size += $_FILES['attachment']['size'][$n];
if (!empty($modSettings['attachmentPostLimit']) && $total_size > $modSettings['attachmentPostLimit'] * 1024)
{
checkSubmitOnce('free');
fatal_lang_error('file_too_big', false, array($modSettings['attachmentPostLimit']));
}
REPLACE with:
// Check the total upload size for this post...
$total_size += $_FILES['attachment']['size'][$n];
if (!$user_info['is_admin'] && !empty($modSettings['attachmentPostLimit']) && $total_size > $modSettings['attachmentPostLimit'] * 1024)
{
checkSubmitOnce('free');
fatal_lang_error('file_too_big', false, array($modSettings['attachmentPostLimit']));
}
Doesn´t seem to work for me. I´m the main and only administrator of my forum and although I made the changes to Post.php I´m not able to upload more and bigger files as defined in the attachment settings. Using SMF 2.0.2.
Any ideas?
Quote from: michaeloeser on March 02, 2012, 04:19:05 AM
Doesn´t seem to work for me. I´m the main and only administrator of my forum and although I made the changes to Post.php I´m not able to upload more and bigger files as defined in the attachment settings. Using SMF 2.0.2.
Any ideas?
For me neither. I'm using 2.0.2, just made exactly the edits shown above, but nothing happened...
Any update here?
waiting for update as well
Hi, look in Subs-Post.php for the same set of checks and make the recommended change to those also.
Except, instead of !$user_info['is_admin'] use !$context['user']['is_admin']
A smoother way I told here:
http://www.simplemachines.org/community/index.php?topic=479722.0
Quote from: Chalky on March 17, 2012, 10:48:23 AM
Quote from: michaeloeser on March 02, 2012, 04:19:05 AM
Doesn´t seem to work for me. I´m the main and only administrator of my forum and although I made the changes to Post.php I´m not able to upload more and bigger files as defined in the attachment settings. Using SMF 2.0.2.
Any ideas?
For me neither. I'm using 2.0.2, just made exactly the edits shown above, but nothing happened...
The reason it doesn't work is it's incomplete. Modifications must be made to the
Themes/default/Post.template.php as well....
In
Sources/Post.php, find and replace:
$context['num_allowed_attachments'] = empty($modSettings['attachmentNumPerPostLimit'])
$context['num_allowed_attachments'] = ($user_info['is_admin'] || empty($modSettings['attachmentNumPerPostLimit']))
In
Sources/Subs-Post.php, find and replace:
function createAttachment(&$attachmentOptions)
{
global
function createAttachment(&$attachmentOptions)
{
global $user_info,
if (!empty($modSettings['attachmentSizeLimit']) && $attachmentOptions['size'] > $modSettings['attachmentSizeLimit'] * 1024)
if (!$user_info['is_admin'] && !empty($modSettings['attachmentSizeLimit']) && $attachmentOptions['size'] > $modSettings['attachmentSizeLimit'] * 1024)
In
Themes/default/Post.template.php, find and replace these:
function template_main()
{
global
function template_main()
{
global $user_info,
if ($context['num_allowed_attachments'] > 1)]]></search>
if ($user_info['is_admin'] || $context['num_allowed_attachments'] > 1)
var allowed_attachments = ', $context['num_allowed_attachments'], ';
var allowed_attachments = ', (empty($user_info['is_admin']) ? $context['num_allowed_attachments'] : 100), ';
if (!empty($modSettings['attachmentCheckExtensions']))
if (!$user_info['is_admin'] && !empty($modSettings['attachmentCheckExtensions']))
if (!empty($context['attachment_restrictions']))
if (!$user_info['is_admin'] && !empty($context['attachment_restrictions']))
I've posted up a mod based on this thread with all my modifications (9 operations total) here: No Attachment Limit for Admins (http://custom.simplemachines.org/mods/index.php?mod=3997). It hasn't been approved yet....
It occurs to me that the admin check could be converted into a permission-based group thingy.....
No attachment limits for membergroups (http://custom.simplemachines.org/mods/index.php?mod=3997) mod has been released, if anyone is interested......
Quote from: bodyboard_jerez on May 28, 2007, 11:04:29 AM
Hi, I have the 1.1.2 version and this Tips and Tricks doesn't runs for me...
Please, could you help me? Thanks a lot "!"
It also not working for my version 1.1.2
if you are running 1.1.2, you are 18 revisions behind and need to upgrade ASAP.