News:

SMF 2.1.6 has been released! Take it for a spin! Read more.

Main Menu

Member Awards (2.0 Compatible!)

Started by Spuds, September 18, 2006, 03:14:03 PM

Previous topic - Next topic

thecoo1est

Quote from: Spuds on August 13, 2011, 12:31:03 PM
If the only problem you are having is the missing text string, that would indicate that either (or both) of the following things happened.  Also you should not have to emulate rc4 but it does not hurt either.

1) The edits to Modifications.english.php did not happen
2) The file ManageAwards.english.php file did not get copied to the language file directory (if you are using a custom there place a copy in there as well, should not have to do this but ...)

there are utf8 versions of the above if you are using that on your forum. 

Those languages files will be under Themes\default\languages

I checked all the files, they all had the edits in them, i will just wait for update if there ever is one, Ive been through this thing 5 or 6 times uninstalling reinstalling triple checking ever single edit manually, it just will not work with my setup for whatever reason.

Spuds

QuotePlease write in this modification the ability to add in the future such functions:
to reward one person of the same award more than once?
Not planning on adding that .... you can always define another award with the same image, and assign that to the member.

QuoteI checked all the files, they all had the edits in them, i will just wait for update if there ever is one, Ive been through this thing 5 or 6 times uninstalling reinstalling triple checking ever single edit manually, it just will not work with my setup for whatever reason.
Pretty strange ... only other thing it could be is some old cache file on the server.  I've put the update on the shelf for the time being, its was not working and I just don't have the desire to do any work on it ATM, just have to many other projects going on.

digitalmikey

I'm trying to figure out if I should install the current version of this mod or hold off until the next main version is released. Is there an estimation as to when the next version will be released? September, October, etc?

I appreciate all the hard work!

WinkWay

Is the text on each of these awards generated by the 'Award Name' field when filled in or would I have to make custom ones in Photoshop etc to change the text on it?

Sci-Fi_Fan

#2424
A couple of questions:

The awards section in topic view, is there a way to adjust the width of it? My awards are showing, but there is a big gap between the end of my awards and the "border" of the section.

Additionally, is there a way to extend the length of the award description? The current length seems very short.
ShadowFleet.org - more than just a Star Trek RPG!

digitalmikey

Okay I am trying to get the "Awards" link to show in its own tab, yet I can only seem to put it in a drop down of another menu item. Right now I have it under "Configuration" but I'd like it to have it's own link by itself in the admin menu. How would I go about doing this? Here is my Admin.php:

<?php

/**
* Simple Machines Forum (SMF)
*
* @package SMF
* @author Simple Machines
*
* @copyright 2011 Simple Machines
* @license http://www.simplemachines.org/about/smf/license.php BSD
*
* @version 2.0
*/

if (!defined('SMF'))
die('Hacking attempt...');

/* This file, unpredictable as this might be, handles basic administration.

void AdminMain()
- initialises all the basic context required for the admin center.
- passes execution onto the relevant admin section.
- if the passed section is not found it shows the admin home page.

void AdminHome()
- prepares all the data necessary for the administration front page.
- uses the Admin template along with the admin sub template.
- requires the moderate_forum, manage_membergroups, manage_bans,
 admin_forum, manage_permissions, manage_attachments, manage_smileys,
 manage_boards, edit_news, or send_mail permission.
- uses the index administrative area.
- can be found by going to ?action=admin.

void AdminSearch()
- allocates out all the search stuff.

void AdminSearchInternal()
- a complicated but relatively quick internal search.

void AdminSearchMember()
- pass through to manage members.

void DisplayAdminFile()
- get one of the admin information files from Simple Machines.

*/

// The main admin handling function.
function AdminMain()
{
global $txt, $context, $scripturl, $sc, $modSettings, $user_info, $settings, $sourcedir, $options, $smcFunc, $boarddir;

// Load the language and templates....
loadLanguage('Admin');
loadTemplate('Admin', 'admin');

// No indexing evil stuff.
$context['robot_no_index'] = true;

require_once($sourcedir . '/Subs-Menu.php');

// Some preferences.
$context['admin_preferences'] = !empty($options['admin_preferences']) ? unserialize($options['admin_preferences']) : array();

// Define all the menu structure - see Subs-Menu.php for details!
$admin_areas = array(
'forum' => array(
'title' => $txt['admin_main'],
'permission' => array('admin_forum', 'manage_permissions', 'moderate_forum', 'manage_membergroups', 'manage_bans', 'send_mail', 'edit_news', 'manage_boards', 'manage_smileys', 'manage_attachments'),
'areas' => array(
'index' => array(
'label' => $txt['admin_center'],
'function' => 'AdminHome',
'icon' => 'administration.gif',
),
'credits' => array(
'label' => $txt['support_credits_title'],
'function' => 'AdminHome',
'icon' => 'support.gif',
),
'news' => array(
'label' => $txt['news_title'],
'file' => 'ManageNews.php',
'function' => 'ManageNews',
'icon' => 'news.gif',
'permission' => array('edit_news', 'send_mail', 'admin_forum'),
'subsections' => array(
'editnews' => array($txt['admin_edit_news'], 'edit_news'),
'mailingmembers' => array($txt['admin_newsletters'], 'send_mail'),
'settings' => array($txt['settings'], 'admin_forum'),
),
),
'packages' => array(
'label' => $txt['package'],
'file' => 'Packages.php',
'function' => 'Packages',
'permission' => array('admin_forum'),
'icon' => 'packages.gif',
'subsections' => array(
'browse' => array($txt['browse_packages']),
'packageget' => array($txt['download_packages'], 'url' => $scripturl . '?action=admin;area=packages;sa=packageget;get'),
'installed' => array($txt['installed_packages']),
'perms' => array($txt['package_file_perms']),
'options' => array($txt['package_settings']),
),
),
'search' => array(
'function' => 'AdminSearch',
'permission' => array('admin_forum'),
'select' => 'index'
),
),
),
'config' => array(
'title' => $txt['admin_config'],
'permission' => array('admin_forum'),
'areas' => array(
'corefeatures' => array(
'label' => $txt['core_settings_title'],
'file' => 'ManageSettings.php',
'function' => 'ModifyCoreFeatures',
'icon' => 'corefeatures.gif',
),
'shoutbox' => array(
'label' => $txt['sba_link'],
'file' => 'ManageShoutbox.php',
'function' => 'ManageShoutbox',
'icon' => 'support.gif',
),
'featuresettings' => array(
'label' => $txt['modSettings_title'],
'file' => 'ManageSettings.php',
'function' => 'ModifyFeatureSettings',
'icon' => 'features.gif',
'subsections' => array(
'basic' => array($txt['mods_cat_features']),
'layout' => array($txt['mods_cat_layout']),
'MemberColorLinks' => array($txt['MemberColorLinkHeadline']),
'karma' => array($txt['karma'], 'enabled' => in_array('k', $context['admin_features'])),
'sig' => array($txt['signature_settings_short']),
'profile' => array($txt['custom_profile_shorttitle'], 'enabled' => in_array('cp', $context['admin_features'])),
),
),
'securitysettings' => array(
'label' => $txt['admin_security_moderation'],
'file' => 'ManageSettings.php',
'function' => 'ModifySecuritySettings',
'icon' => 'security.gif',
'subsections' => array(
'general' => array($txt['mods_cat_security_general']),
'spam' => array($txt['antispam_title']),
'moderation' => array($txt['moderation_settings_short'], 'enabled' => substr($modSettings['warning_settings'], 0, 1) == 1),
),
),
'languages' => array(
'label' => $txt['language_configuration'],
'file' => 'ManageServer.php',
'function' => 'ManageLanguages',
'icon' => 'languages.gif',
'subsections' => array(
'edit' => array($txt['language_edit']),
'add' => array($txt['language_add']),
'settings' => array($txt['language_settings']),
),
),
'serversettings' => array(
'label' => $txt['admin_server_settings'],
'file' => 'ManageServer.php',
'function' => 'ModifySettings',
'icon' => 'server.gif',
'subsections' => array(
'general' => array($txt['general_settings']),
'database' => array($txt['database_paths_settings']),
'cookie' => array($txt['cookies_sessions_settings']),
'cache' => array($txt['caching_settings']),
'loads' => array($txt['load_balancing_settings']),
),
),


'feedsadmin' => array(
'label' => $txt['smfrssposter_admin'],
'file' => 'FeedPoster2.php',
'function' => 'FeedsMain',
'custom_url' => $scripturl . '?action=admin;area=feedsadmin;sesc=' . $sc,
'icon' => 'server.gif',
'subsections' => array(),
),


'comment' => array(
'label' => $txt['pcomments_admin'],
'file' => 'ProfileComments2.php',
'function' => 'CommentsMain',
'custom_url' => $scripturl . '?action=admin;area=comment;sa=admin;sesc=' . $sc,
'icon' => 'server.gif',
'subsections' => array(),



),



'current_theme' => array(
'label' => $txt['theme_current_settings'],
'file' => 'Themes.php',
'function' => 'ThemesMain',
'custom_url' => $scripturl . '?action=admin;area=theme;sa=settings;th=' . $settings['theme_id'],
'icon' => 'current_theme.gif',
),
'theme' => array(
'label' => $txt['theme_admin'],
'file' => 'Themes.php',
'function' => 'ThemesMain',
'custom_url' => $scripturl . '?action=admin;area=theme;sa=admin',
'icon' => 'themes.gif',
'subsections' => array(
'admin' => array($txt['themeadmin_admin_title']),
'list' => array($txt['themeadmin_list_title']),
'reset' => array($txt['themeadmin_reset_title']),
'edit' => array($txt['themeadmin_edit_title']),
),
),








'awards' => array(
'label' => $txt['awards'],
'file' => 'ManageAwards.php',
'function' => 'Awards',
'icon' => 'awards.gif',
'permission' => array('manage_awards'),
'subsections' => array(
'main' => array($txt['awards_main']),
'modify' => array($txt['awards_modify']),
'assign' => array($txt['awards_assign']),
'categories' => array($txt['awards_categories']),
'settings' => array($txt['awards_settings']),
),
),








'modsettings' => array(
'label' => $txt['admin_modifications'],
'file' => 'ManageSettings.php',
'function' => 'ModifyModSettings',
'icon' => 'modifications.gif',
'subsections' => array(
'general' => array($txt['mods_cat_modifications_misc']),
// Mod Authors for a "ADD AFTER" on this line. Ensure you end your change with a comma. For example:
// 'shout' => array($txt['shout']),
// Note the comma!! The setting with automatically appear with the first mod to be added.
'sitemap' => array($txt['sitemap']),
'enotify' => array('ENotify'),
),
),

),
),
















'store' => array(
'title' => $txt['smfstore_admin'],
'permission' => array('smfstore_manage'),
'areas' => array(
'store' => array(
'label' => $txt['smfstore_admin'],
'file' => 'Store2.php',
'function' => 'StoreMain',
'custom_url' => $scripturl . '?action=admin;area=store;sa=admin;sesc=' . $sc,
'icon' => 'server.gif',

),),
),








'mediapro' => array(
'title' => $txt['mediapro_admin'],
'permission' => array('admin_forum'),
'areas' => array(
'mediapro' => array(
'label' => $txt['mediapro_settings'],
'file' => 'AutoEmbedMediaPro2.php',
'function' => 'MediaProMain',
'custom_url' => $scripturl . '?action=admin;area=mediapro;sa=settings;sesc=' . $sc,
'icon' => 'server.gif',
'permission' => array('admin_forum'),
'subsections' => array(
'settings' => array($txt['mediapro_settings']),

),
),







),
),





'layout' => array(
'title' => $txt['layout_controls'],




'permission' => array('manage_boards', 'admin_forum', 'manage_smileys', 'manage_attachments', 'moderate_forum'),
'areas' => array(
'manageboards' => array(
'label' => $txt['admin_boards'],
'file' => 'ManageBoards.php',
'function' => 'ManageBoards',
'icon' => 'boards.gif',
'permission' => array('manage_boards'),
'subsections' => array(
'main' => array($txt['boardsEdit']),
'newcat' => array($txt['mboards_new_cat']),
'settings' => array($txt['settings'], 'admin_forum'),
),
),
'postsettings' => array(
'label' => $txt['manageposts'],
'file' => 'ManagePosts.php',
'function' => 'ManagePostSettings',
'permission' => array('admin_forum'),
'icon' => 'posts.gif',
'subsections' => array(
'posts' => array($txt['manageposts_settings']),
'bbc' => array($txt['manageposts_bbc_settings']),
'censor' => array($txt['admin_censored_words']),
'topics' => array($txt['manageposts_topic_settings']),
),
),
'managecalendar' => array(
'label' => $txt['manage_calendar'],
'file' => 'ManageCalendar.php',
'function' => 'ManageCalendar',
'icon' => 'calendar.gif',
'permission' => array('admin_forum'),
'enabled' => in_array('cd', $context['admin_features']),
'subsections' => array(
'holidays' => array($txt['manage_holidays'], 'admin_forum', 'enabled' => !empty($modSettings['cal_enabled'])),
'settings' => array($txt['calendar_settings'], 'admin_forum'),
),
),
'managesearch' => array(
'label' => $txt['manage_search'],
'file' => 'ManageSearch.php',
'function' => 'ManageSearch',
'icon' => 'search.gif',
'permission' => array('admin_forum'),
'subsections' => array(
'weights' => array($txt['search_weights']),
'method' => array($txt['search_method']),
'settings' => array($txt['settings']),
),
),
'smileys' => array(
'label' => $txt['smileys_manage'],
'file' => 'ManageSmileys.php',
'function' => 'ManageSmileys',
'icon' => 'smiley.gif',
'permission' => array('manage_smileys'),
'subsections' => array(
'editsets' => array($txt['smiley_sets']),
'addsmiley' => array($txt['smileys_add'], 'enabled' => !empty($modSettings['smiley_enable'])),
'editsmileys' => array($txt['smileys_edit'], 'enabled' => !empty($modSettings['smiley_enable'])),
'setorder' => array($txt['smileys_set_order'], 'enabled' => !empty($modSettings['smiley_enable'])),
'editicons' => array($txt['icons_edit_message_icons'], 'enabled' => !empty($modSettings['messageIcons_enable'])),
'settings' => array($txt['settings']),
),
),
'manageattachments' => array(
'label' => $txt['attachments_avatars'],
'file' => 'ManageAttachments.php',
'function' => 'ManageAttachments',
'icon' => 'attachment.gif',
'permission' => array('manage_attachments'),
'subsections' => array(
'browse' => array($txt['attachment_manager_browse']),
'attachments' => array($txt['attachment_manager_settings']),
'avatars' => array($txt['attachment_manager_avatar_settings']),
'maintenance' => array($txt['attachment_manager_maintenance']),
),
),
),
),
'members' => array(
'title' => $txt['admin_manage_members'],
'permission' => array('moderate_forum', 'manage_membergroups', 'manage_bans', 'manage_permissions', 'admin_forum'),
'areas' => array(
'viewmembers' => array(
'label' => $txt['admin_users'],
'file' => 'ManageMembers.php',
'function' => 'ViewMembers',
'icon' => 'members.gif',
'permission' => array('moderate_forum'),
'subsections' => array(
'all' => array($txt['view_all_members']),
'search' => array($txt['mlist_search']),
),
),
'membergroups' => array(
'label' => $txt['admin_groups'],
'file' => 'ManageMembergroups.php',
'function' => 'ModifyMembergroups',
'icon' => 'membergroups.gif',
'permission' => array('manage_membergroups'),
'subsections' => array(
'index' => array($txt['membergroups_edit_groups'], 'manage_membergroups'),
'add' => array($txt['membergroups_new_group'], 'manage_membergroups'),
'settings' => array($txt['settings'], 'admin_forum'),
),
),
'permissions' => array(
'label' => $txt['edit_permissions'],
'file' => 'ManagePermissions.php',
'function' => 'ModifyPermissions',
'icon' => 'permissions.gif',
'permission' => array('manage_permissions'),
'subsections' => array(
'index' => array($txt['permissions_groups'], 'manage_permissions'),
'board' => array($txt['permissions_boards'], 'manage_permissions'),
'profiles' => array($txt['permissions_profiles'], 'manage_permissions'),
'postmod' => array($txt['permissions_post_moderation'], 'manage_permissions', 'enabled' => $modSettings['postmod_active']),
'settings' => array($txt['settings'], 'admin_forum'),
),
),
'regcenter' => array(
'label' => $txt['registration_center'],
'file' => 'ManageRegistration.php',
'function' => 'RegCenter',
'icon' => 'regcenter.gif',
'permission' => array('admin_forum', 'moderate_forum'),
'subsections' => array(
'register' => array($txt['admin_browse_register_new'], 'moderate_forum'),
'agreement' => array($txt['registration_agreement'], 'admin_forum'),
'reservednames' => array($txt['admin_reserved_set'], 'admin_forum'),
'settings' => array($txt['settings'], 'admin_forum'),
),
),
'ban' => array(
'label' => $txt['ban_title'],
'file' => 'ManageBans.php',
'function' => 'Ban',
'icon' => 'ban.gif',
'permission' => 'manage_bans',
'subsections' => array(
'list' => array($txt['ban_edit_list']),
'add' => array($txt['ban_add_new']),
'browse' => array($txt['ban_trigger_browse']),
'log' => array($txt['ban_log']),
),
),
'paidsubscribe' => array(
'label' => $txt['paid_subscriptions'],
'enabled' => in_array('ps', $context['admin_features']),
'file' => 'ManagePaid.php',
'icon' => 'paid.gif',
'function' => 'ManagePaidSubscriptions',
'permission' => 'admin_forum',
'subsections' => array(
'view' => array($txt['paid_subs_view']),
'settings' => array($txt['settings']),
),
),
'sengines' => array(
'label' => $txt['search_engines'],
'enabled' => in_array('sp', $context['admin_features']),
'file' => 'ManageSearchEngines.php',
'icon' => 'engines.gif',
'function' => 'SearchEngines',
'permission' => 'admin_forum',
'subsections' => array(
'stats' => array($txt['spider_stats']),
'logs' => array($txt['spider_logs']),
'spiders' => array($txt['spiders']),
'settings' => array($txt['settings']),
),
),
),
),
'maintenance' => array(
'title' => $txt['admin_maintenance'],
'permission' => array('admin_forum'),
'areas' => array(
'maintain' => array(
'label' => $txt['maintain_title'],
'file' => 'ManageMaintenance.php',
'icon' => 'maintain.gif',
'function' => 'ManageMaintenance',
'subsections' => array(
'routine' => array($txt['maintain_sub_routine'], 'admin_forum'),
'database' => array($txt['maintain_sub_database'], 'admin_forum'),
'members' => array($txt['maintain_sub_members'], 'admin_forum'),
'topics' => array($txt['maintain_sub_topics'], 'admin_forum'),
),
),
'scheduledtasks' => array(
'label' => $txt['maintain_tasks'],
'file' => 'ManageScheduledTasks.php',
'icon' => 'scheduled.gif',
'function' => 'ManageScheduledTasks',
'subsections' => array(
'tasks' => array($txt['maintain_tasks'], 'admin_forum'),
'tasklog' => array($txt['scheduled_log'], 'admin_forum'),
),
),
'mailqueue' => array(
'label' => $txt['mailqueue_title'],
'file' => 'ManageMail.php',
'function' => 'ManageMail',
'icon' => 'mail.gif',
'subsections' => array(
'browse' => array($txt['mailqueue_browse'], 'admin_forum'),
'settings' => array($txt['mailqueue_settings'], 'admin_forum'),
),
),
'reports' => array(
'enabled' => in_array('rg', $context['admin_features']),
'label' => $txt['generate_reports'],
'file' => 'Reports.php',
'function' => 'ReportsMain',
'icon' => 'reports.gif',
),
'logs' => array(
'label' => $txt['logs'],
'function' => 'AdminLogs',
'icon' => 'logs.gif',
'subsections' => array(
'errorlog' => array($txt['errlog'], 'admin_forum', 'enabled' => !empty($modSettings['enableErrorLogging']), 'url' => $scripturl . '?action=admin;area=logs;sa=errorlog;desc'),
'adminlog' => array($txt['admin_log'], 'admin_forum', 'enabled' => in_array('ml', $context['admin_features'])),
'modlog' => array($txt['moderation_log'], 'admin_forum', 'enabled' => in_array('ml', $context['admin_features'])),
'banlog' => array($txt['ban_log'], 'manage_bans'),
'spiderlog' => array($txt['spider_logs'], 'admin_forum', 'enabled' => in_array('sp', $context['admin_features'])),
'tasklog' => array($txt['scheduled_log'], 'admin_forum'),
'pruning' => array($txt['pruning_title'], 'admin_forum'),
),
),
'repairboards' => array(
'label' => $txt['admin_repair'],
'file' => 'RepairBoards.php',
'function' => 'RepairBoards',
'select' => 'maintain',
'hidden' => true,
),


),
),

);

// Any files to include for administration?
if (!empty($modSettings['integrate_admin_include']))
{
$admin_includes = explode(',', $modSettings['integrate_admin_include']);
foreach ($admin_includes as $include)
{
$include = strtr(trim($include), array('$boarddir' => $boarddir, '$sourcedir' => $sourcedir, '$themedir' => $settings['theme_dir']));
if (file_exists($include))
require_once($include);
}
}

// Let them modify admin areas easily.
call_integration_hook('integrate_admin_areas', array(&$admin_areas));

// Make sure the administrator has a valid session...
validateSession();

// Actually create the menu!
$admin_include_data = createMenu($admin_areas);
unset($admin_areas);

// Nothing valid?
if ($admin_include_data == false)
fatal_lang_error('no_access', false);

// Build the link tree.
$context['linktree'][] = array(
'url' => $scripturl . '?action=admin',
'name' => $txt['admin_center'],
);
if (isset($admin_include_data['current_area']) && $admin_include_data['current_area'] != 'index')
$context['linktree'][] = array(
'url' => $scripturl . '?action=admin;area=' . $admin_include_data['current_area'] . ';' . $context['session_var'] . '=' . $context['session_id'],
'name' => $admin_include_data['label'],
);
if (!empty($admin_include_data['current_subsection']) && $admin_include_data['subsections'][$admin_include_data['current_subsection']][0] != $admin_include_data['label'])
$context['linktree'][] = array(
'url' => $scripturl . '?action=admin;area=' . $admin_include_data['current_area'] . ';sa=' . $admin_include_data['current_subsection'] . ';' . $context['session_var'] . '=' . $context['session_id'],
'name' => $admin_include_data['subsections'][$admin_include_data['current_subsection']][0],
);

// Make a note of the Unique ID for this menu.
$context['admin_menu_id'] = $context['max_menu_id'];
$context['admin_menu_name'] = 'menu_data_' . $context['admin_menu_id'];

// Why on the admin are we?
$context['admin_area'] = $admin_include_data['current_area'];

// Now - finally - call the right place!
if (isset($admin_include_data['file']))
require_once($sourcedir . '/' . $admin_include_data['file']);

$admin_include_data['function']();
}

// The main administration section.
function AdminHome()
{
global $sourcedir, $forum_version, $txt, $scripturl, $context, $user_info, $boardurl, $modSettings, $smcFunc;

// You have to be able to do at least one of the below to see this page.
isAllowedTo(array('admin_forum', 'manage_permissions', 'moderate_forum', 'manage_membergroups', 'manage_bans', 'send_mail', 'edit_news', 'manage_boards', 'manage_smileys', 'manage_attachments'));

// Find all of this forum's administrators...
require_once($sourcedir . '/Subs-Membergroups.php');
if (listMembergroupMembers_Href($context['administrators'], 1, 32) && allowedTo('manage_membergroups'))
{
// Add a 'more'-link if there are more than 32.
$context['more_admins_link'] = '<a href="' . $scripturl . '?action=moderate;area=viewgroups;sa=members;group=1">' . $txt['more'] . '</a>';
}

// Load the credits stuff.
require_once($sourcedir . '/Who.php');
Credits(true);

// This makes it easier to get the latest news with your time format.
$context['time_format'] = urlencode($user_info['time_format']);

$context['current_versions'] = array(
'php' => array('title' => $txt['support_versions_php'], 'version' => PHP_VERSION),
'db' => array('title' => sprintf($txt['support_versions_db'], $smcFunc['db_title']), 'version' => ''),
'server' => array('title' => $txt['support_versions_server'], 'version' => $_SERVER['SERVER_SOFTWARE']),
);
$context['forum_version'] = $forum_version;

// Get a list of current server versions.
require_once($sourcedir . '/Subs-Admin.php');
$checkFor = array(
'gd',
'db_server',
'mmcache',
'eaccelerator',
'phpa',
'apc',
'memcache',
'xcache',
'php',
'server',
);
$context['current_versions'] = getServerVersions($checkFor);

$context['can_admin'] = allowedTo('admin_forum');

$context['sub_template'] = $context['admin_area'] == 'credits' ? 'credits' : 'admin';
$context['page_title'] = $context['admin_area'] == 'credits' ? $txt['support_credits_title'] : $txt['admin_center'];

// The format of this array is: permission, action, title, description, icon.
$quick_admin_tasks = array(
array('', 'credits', 'support_credits_title', 'support_credits_info', 'support_and_credits.png'),
array('admin_forum', 'featuresettings', 'modSettings_title', 'modSettings_info', 'features_and_options.png'),
array('admin_forum', 'maintain', 'maintain_title', 'maintain_info', 'forum_maintenance.png'),
array('manage_permissions', 'permissions', 'edit_permissions', 'edit_permissions_info', 'permissions.png'),
array('admin_forum', 'theme;sa=admin;' . $context['session_var'] . '=' . $context['session_id'], 'theme_admin', 'theme_admin_info', 'themes_and_layout.png'),
array('admin_forum', 'packages', 'package', 'package_info', 'packages.png'),
array('manage_smileys', 'smileys', 'smileys_manage', 'smileys_manage_info', 'smilies_and_messageicons.png'),
array('moderate_forum', 'viewmembers', 'admin_users', 'member_center_info', 'members.png'),
);

$context['quick_admin_tasks'] = array();
foreach ($quick_admin_tasks as $task)
{
if (!empty($task[0]) && !allowedTo($task[0]))
continue;

$context['quick_admin_tasks'][] = array(
'href' => $scripturl . '?action=admin;area=' . $task[1],
'link' => '<a href="' . $scripturl . '?action=admin;area=' . $task[1] . '">' . $txt[$task[2]] . '</a>',
'title' => $txt[$task[2]],
'description' => $txt[$task[3]],
'icon' => $task[4],
'is_last' => false
);
}

if (count($context['quick_admin_tasks']) % 2 == 1)
{
$context['quick_admin_tasks'][] = array(
'href' => '',
'link' => '',
'title' => '',
'description' => '',
'is_last' => true
);
$context['quick_admin_tasks'][count($context['quick_admin_tasks']) - 2]['is_last'] = true;
}
elseif (count($context['quick_admin_tasks']) != 0)
{
$context['quick_admin_tasks'][count($context['quick_admin_tasks']) - 1]['is_last'] = true;
$context['quick_admin_tasks'][count($context['quick_admin_tasks']) - 2]['is_last'] = true;
}

// Lastly, fill in the blanks in the support resources paragraphs.
$txt['support_resources_p1'] = sprintf($txt['support_resources_p1'],
'http://wiki.simplemachines.org/',
'http://wiki.simplemachines.org/smf/features2',
'http://wiki.simplemachines.org/smf/options2',
'http://wiki.simplemachines.org/smf/themes2',
'http://wiki.simplemachines.org/smf/packages2'
);
$txt['support_resources_p2'] = sprintf($txt['support_resources_p2'],
'http://www.simplemachines.org/community/',
'http://www.simplemachines.org/redirect/english_support',
'http://www.simplemachines.org/redirect/international_support_boards',
'http://www.simplemachines.org/redirect/smf_support',
'http://www.simplemachines.org/redirect/customize_support'
);
}

// Get one of the admin information files from Simple Machines.
function DisplayAdminFile()
{
global $context, $modSettings, $smcFunc;

@ini_set('memory_limit', '32M');

if (empty($_REQUEST['filename']) || !is_string($_REQUEST['filename']))
fatal_lang_error('no_access', false);

$request = $smcFunc['db_query']('', '
SELECT data, filetype
FROM {db_prefix}admin_info_files
WHERE filename = {string:current_filename}
LIMIT 1'
,
array(
'current_filename' => $_REQUEST['filename'],
)
);

if ($smcFunc['db_num_rows']($request) == 0)
fatal_lang_error('admin_file_not_found', true, array($_REQUEST['filename']));

list ($file_data, $filetype) = $smcFunc['db_fetch_row']($request);
$smcFunc['db_free_result']($request);

// !!! Temp.
// Figure out if sesc is still being used.
if (strpos($file_data, ';sesc=') !== false)
$file_data = '
if (!(\'smfForum_sessionvar\' in window))
window.smfForum_sessionvar = \'sesc\';
'
. strtr($file_data, array(';sesc=' => ';\' + window.smfForum_sessionvar + \'='));

$context['template_layers'] = array();
// Lets make sure we aren't going to output anything nasty.
@ob_end_clean();
if (!empty($modSettings['enableCompressedOutput']))
@ob_start('ob_gzhandler');
else
@ob_start();

// Make sure they know what type of file we are.
header('Content-Type: ' . $filetype);
echo $file_data;
obExit(false);
}

// This allocates out all the search stuff.
function AdminSearch()
{
global $txt, $context, $smcFunc, $sourcedir;

isAllowedTo('admin_forum');

// What can we search for?
$subactions = array(
'internal' => 'AdminSearchInternal',
'online' => 'AdminSearchOM',
'member' => 'AdminSearchMember',
);

$context['search_type'] = !isset($_REQUEST['search_type']) || !isset($subactions[$_REQUEST['search_type']]) ? 'internal' : $_REQUEST['search_type'];
$context['search_term'] = isset($_REQUEST['search_term']) ? $smcFunc['htmlspecialchars']($_REQUEST['search_term'], ENT_QUOTES) : '';

$context['sub_template'] = 'admin_search_results';
$context['page_title'] = $txt['admin_search_results'];

// Keep track of what the admin wants.
if (empty($context['admin_preferences']['sb']) || $context['admin_preferences']['sb'] != $context['search_type'])
{
$context['admin_preferences']['sb'] = $context['search_type'];

// Update the preferences.
require_once($sourcedir . '/Subs-Admin.php');
updateAdminPreferences();
}

if (trim($context['search_term']) == '')
$context['search_results'] = array();
else
$subactions[$context['search_type']]();
}

// A complicated but relatively quick internal search.
function AdminSearchInternal()
{
global $context, $txt, $helptxt, $scripturl, $sourcedir;

// Try to get some more memory.
@ini_set('memory_limit', '128M');

// Load a lot of language files.
$language_files = array(
'Help', 'ManageMail', 'ManageSettings', 'ManageCalendar', 'ManageBoards', 'ManagePaid', 'ManagePermissions', 'Search',
'Login', 'ManageSmileys',
);
loadLanguage(implode('+', $language_files));

// All the files we need to include.
$include_files = array(
'ManageSettings', 'ManageBoards', 'ManageNews', 'ManageAttachments', 'ManageCalendar', 'ManageMail', 'ManagePaid', 'ManagePermissions',
'ManagePosts', 'ManageRegistration', 'ManageSearch', 'ManageSearchEngines', 'ManageServer', 'ManageSmileys',
);
foreach ($include_files as $file)
require_once($sourcedir . '/' . $file . '.php');

/* This is the huge array that defines everything... it's a huge array of items formatted as follows:
0 = Language index (Can be array of indexes) to search through for this setting.
1 = URL for this indexes page.
2 = Help index for help associated with this item (If different from 0)
*/

$search_data = array(
// All the major sections of the forum.
'sections' => array(
),
'settings' => array(
array('COPPA', 'area=regcenter;sa=settings'),
array('CAPTCHA', 'area=securitysettings;sa=spam'),
),
);

// Go through the admin menu structure trying to find suitably named areas!
foreach ($context[$context['admin_menu_name']]['sections'] as $section)
{
foreach ($section['areas'] as $menu_key => $menu_item)
{
$search_data['sections'][] = array($menu_item['label'], 'area=' . $menu_key);
if (!empty($menu_item['subsections']))
foreach ($menu_item['subsections'] as $key => $sublabel)
{
if (isset($sublabel['label']))
$search_data['sections'][] = array($sublabel['label'], 'area=' . $menu_key . ';sa=' . $key);
}
}
}

// This is a special array of functions that contain setting data - we query all these to simply pull all setting bits!
$settings_search = array(
array('ModifyCoreFeatures', 'area=corefeatures'),
array('ModifyBasicSettings', 'area=featuresettings;sa=basic'),
array('ModifyLayoutSettings', 'area=featuresettings;sa=layout'),
array('ModifyKarmaSettings', 'area=featuresettings;sa=karma'),
array('ModifySignatureSettings', 'area=featuresettings;sa=sig'),
array('ModifyGeneralSecuritySettings', 'area=securitysettings;sa=general'),
array('ModifySpamSettings', 'area=securitysettings;sa=spam'),
array('ModifyModerationSettings', 'area=securitysettings;sa=moderation'),
array('ModifyGeneralModSettings', 'area=modsettings;sa=general'),
// Mod authors if you want to be "real freaking good" then add any setting pages for your mod BELOW this line!
array('ManageAttachmentSettings', 'area=manageattachments;sa=attachments'),
array('ManageAvatarSettings', 'area=manageattachments;sa=avatars'),
array('ModifyCalendarSettings', 'area=managecalendar;sa=settings'),
array('EditBoardSettings', 'area=manageboards;sa=settings'),
array('ModifyMailSettings', 'area=mailqueue;sa=settings'),
array('ModifyNewsSettings', 'area=news;sa=settings'),
array('GeneralPermissionSettings', 'area=permissions;sa=settings'),
array('ModifyPostSettings', 'area=postsettings;sa=posts'),
array('ModifyBBCSettings', 'area=postsettings;sa=bbc'),
array('ModifyTopicSettings', 'area=postsettings;sa=topics'),
array('EditSearchSettings', 'area=managesearch;sa=settings'),
array('EditSmileySettings', 'area=smileys;sa=settings'),
array('ModifyGeneralSettings', 'area=serversettings;sa=general'),
array('ModifyDatabaseSettings', 'area=serversettings;sa=database'),
array('ModifyCookieSettings', 'area=serversettings;sa=cookie'),
array('ModifyCacheSettings', 'area=serversettings;sa=cache'),
array('ModifyLanguageSettings', 'area=languages;sa=settings'),
array('ModifyRegistrationSettings', 'area=regcenter;sa=settings'),
array('ManageSearchEngineSettings', 'area=sengines;sa=settings'),
array('ModifySubscriptionSettings', 'area=paidsubscribe;sa=settings'),
array('ModifyPruningSettings', 'area=logs;sa=pruning'),
);

foreach ($settings_search as $setting_area)
{
// Get a list of their variables.
$config_vars = $setting_area[0](true);

foreach ($config_vars as $var)
if (!empty($var[1]) && !in_array($var[0], array('permissions', 'switch')))
$search_data['settings'][] = array($var[(isset($var[2]) && in_array($var[2], array('file', 'db'))) ? 0 : 1], $setting_area[1]);
}

$context['page_title'] = $txt['admin_search_results'];
$context['search_results'] = array();

$search_term = strtolower($context['search_term']);
// Go through all the search data trying to find this text!
foreach ($search_data as $section => $data)
{
foreach ($data as $item)
{
$found = false;
if (!is_array($item[0]))
$item[0] = array($item[0]);
foreach ($item[0] as $term)
{
$lc_term = strtolower($term);
if (strpos($lc_term, $search_term) !== false || (isset($txt[$term]) && strpos(strtolower($txt[$term]), $search_term) !== false) || (isset($txt['setting_' . $term]) && strpos(strtolower($txt['setting_' . $term]), $search_term) !== false))
{
$found = $term;
break;
}
}

if ($found)
{
// Format the name - and remove any descriptions the entry may have.
$name = isset($txt[$found]) ? $txt[$found] : (isset($txt['setting_' . $found]) ? $txt['setting_' . $found] : $found);
$name = preg_replace('~<(?:div|span)\sclass="smalltext">.+?</(?:div|span)>~', '', $name);

$context['search_results'][] = array(
'url' => (substr($item[1], 0, 4) == 'area' ? $scripturl . '?action=admin;' . $item[1] : $item[1]) . ';' . $context['session_var'] . '=' . $context['session_id'] . ((substr($item[1], 0, 4) == 'area' && $section == 'settings' ? '#' . $item[0][0] : '')),
'name' => $name,
'type' => $section,
'help' => shorten_subject(isset($item[2]) ? strip_tags($helptxt[$item2]) : (isset($helptxt[$found]) ? strip_tags($helptxt[$found]) : ''), 255),
);
}
}
}
}

// All this does is pass through to manage members.
function AdminSearchMember()
{
global $context, $sourcedir;

require_once($sourcedir . '/ManageMembers.php');
$_REQUEST['sa'] = 'query';

$_POST['membername'] = $context['search_term'];

ViewMembers();
}

// This file allows the user to search the SM online manual for a little of help.
function AdminSearchOM()
{
global $context, $sourcedir;

$docsURL = 'docs.simplemachines.org';
$context['doc_scripturl'] = 'http://docs.simplemachines.org/index.php';

// Set all the parameters search might expect.
$postVars = array(
'search' => $context['search_term'],
);

// Encode the search data.
foreach ($postVars as $k => $v)
$postVars[$k] = urlencode($k) . '=' . urlencode($v);

// This is what we will send.
$postVars = implode('&', $postVars);

// Get the results from the doc site.
require_once($sourcedir . '/Subs-Package.php');
$search_results = fetch_web_data($context['doc_scripturl'] . '?action=search2&xml', $postVars);

// If we didn't get any xml back we are in trouble - perhaps the doc site is overloaded?
if (!$search_results || preg_match('~<' . '\?xml\sversion="\d+\.\d+"\sencoding=".+?"\?' . '>\s*(<smf>.+?</smf>)~is', $search_results, $matches) != true)
fatal_lang_error('cannot_connect_doc_site');

$search_results = $matches[1];

// Otherwise we simply walk through the XML and stick it in context for display.
$context['search_results'] = array();
loadClassFile('Class-Package.php');

// Get the results loaded into an array for processing!
$results = new xmlArray($search_results, false);

// Move through the smf layer.
if (!$results->exists('smf'))
fatal_lang_error('cannot_connect_doc_site');
$results = $results->path('smf[0]');

// Are there actually some results?
if (!$results->exists('noresults') && !$results->exists('results'))
fatal_lang_error('cannot_connect_doc_site');
elseif ($results->exists('results'))
{
foreach ($results->set('results/result') as $result)
{
if (!$result->exists('messages'))
continue;

$context['search_results'][$result->fetch('id')] = array(
'topic_id' => $result->fetch('id'),
'relevance' => $result->fetch('relevance'),
'board' => array(
'id' => $result->fetch('board/id'),
'name' => $result->fetch('board/name'),
'href' => $result->fetch('board/href'),
),
'category' => array(
'id' => $result->fetch('category/id'),
'name' => $result->fetch('category/name'),
'href' => $result->fetch('category/href'),
),
'messages' => array(),
);

// Add the messages.
foreach ($result->set('messages/message') as $message)
$context['search_results'][$result->fetch('id')]['messages'][] = array(
'id' => $message->fetch('id'),
'subject' => $message->fetch('subject'),
'body' => $message->fetch('body'),
'time' => $message->fetch('time'),
'timestamp' => $message->fetch('timestamp'),
'start' => $message->fetch('start'),
'author' => array(
'id' => $message->fetch('author/id'),
'name' => $message->fetch('author/name'),
'href' => $message->fetch('author/href'),
),
);
}
}
}

// This function decides which log to load.
function AdminLogs()
{
global $sourcedir, $context, $txt, $scripturl;

// These are the logs they can load.
$log_functions = array(
'errorlog' => array('ManageErrors.php', 'ViewErrorLog'),
'adminlog' => array('Modlog.php', 'ViewModlog'),
'modlog' => array('Modlog.php', 'ViewModlog'),
'banlog' => array('ManageBans.php', 'BanLog'),
'spiderlog' => array('ManageSearchEngines.php', 'SpiderLogs'),
'tasklog' => array('ManageScheduledTasks.php', 'TaskLog'),
'pruning' => array('ManageSettings.php', 'ModifyPruningSettings'),
);

$sub_action = isset($_REQUEST['sa']) && isset($log_functions[$_REQUEST['sa']]) ? $_REQUEST['sa'] : 'errorlog';
// If it's not got a sa set it must have come here for first time, pretend error log should be reversed.
if (!isset($_REQUEST['sa']))
$_REQUEST['desc'] = true;

// Setup some tab stuff.
$context[$context['admin_menu_name']]['tab_data'] = array(
'title' => $txt['logs'],
'help' => '',
'description' => $txt['maintain_info'],
'tabs' => array(
'errorlog' => array(
'url' => $scripturl . '?action=admin;area=logs;sa=errorlog;desc',
'description' => sprintf($txt['errlog_desc'], $txt['remove']),
),
'adminlog' => array(
'description' => $txt['admin_log_desc'],
),
'modlog' => array(
'description' => $txt['moderation_log_desc'],
),
'banlog' => array(
'description' => $txt['ban_log_description'],
),
'spiderlog' => array(
'description' => $txt['spider_log_desc'],
),
'tasklog' => array(
'description' => $txt['scheduled_log_desc'],
),
'pruning' => array(
'description' => $txt['pruning_log_desc'],
),
),
);

require_once($sourcedir . '/' . $log_functions[$sub_action][0]);
$log_functions[$sub_action][1]();
}

?>


Any help will be greatly appreciated! :)

digitalmikey

Also I can not seem to add a Category. It just displays them but I see no button or link to add or delete them. Suggestions?

digitalmikey

Can Spuds or wesker give me a hand?

Spuds

Select categories, then on that page on the right bottom side of the table there is a big green + sign, select that

digitalmikey

Quote from: Spuds on August 21, 2011, 02:28:03 PM
Select categories, then on that page on the right bottom side of the table there is a big green + sign, select that

Thanks Spuds. I must have overlooked that.

Also, could you give me a hand with my Admin.php I posted about? For some reason I manually put the code where it wants me too but it shows up under my Simple Audio Video Embedder menu and does not have its own link next to it. Any help with my current Admin.php to have it show as it's own tab/link and not as a sub under something else?

Thanks!

Spuds

Quote from: digitalmikey on August 21, 2011, 03:24:49 PM
Also, could you give me a hand with my Admin.php I posted about?
I've attached an update to what you posted ... I put the awards after the media tab, move it if you like. 

Looks like that file has been manually edited quite a lot .... note that when you go to uninstall mods (this and others) they will fail on this file file since its been tweaked .... Make a copy of your current one before using this one, I did not test this.

MaNaRa

I have a question...
If I'd like to frame the awards at a kind of box like this, what should I do?
mi versión de foro es SMF 2.0

digitalmikey

Quote from: Spuds on August 21, 2011, 04:41:31 PM
Quote from: digitalmikey on August 21, 2011, 03:24:49 PM
Also, could you give me a hand with my Admin.php I posted about?
I've attached an update to what you posted ... I put the awards after the media tab, move it if you like. 

Looks like that file has been manually edited quite a lot .... note that when you go to uninstall mods (this and others) they will fail on this file file since its been tweaked .... Make a copy of your current one before using this one, I did not test this.

Thanks for the help Spuds but that did not work at all. The Awards link did not show after anything nor was it in a child-drop down somewhere. Any other help or suggestions?

Spuds

Quote
Thanks for the help Spuds but that did not work at all. The Awards link did not show after anything nor was it in a child-drop down somewhere. Any other help or suggestions?
Yeah sorry forgot that was top level ... in that file I gave you

Code (find) Select
'awards' => array(
'label' => $txt['awards'],
'file' => 'ManageAwards.php',
'function' => 'Awards',
'icon' => 'awards.gif',
'permission' => array('manage_awards'),
'subsections' => array(
'main' => array($txt['awards_main']),
'modify' => array($txt['awards_modify']),
'assign' => array($txt['awards_assign']),
'categories' => array($txt['awards_categories']),
'settings' => array($txt['awards_settings']),
),
),

Code (replace) Select
'awards' => array(
'title' => $txt['awards'],
'permission' => array('manage_awards'),
'areas' => array(
'awards' => array(
'label' => $txt['awards'],
'permission' => array('manage_awards'),
'file' => 'ManageAwards.php',
'function' => 'Awards',
'icon' => 'awards.gif',
'subsections' => array(
'main' => array($txt['awards_main']),
'modify' => array($txt['awards_modify']),
'assign' => array($txt['awards_assign']),
'categories' => array($txt['awards_categories']),
'settings' => array($txt['awards_settings']),
),
),
),
),

-OR-
Code (replace) Select
'awards' => array(
'title' => $txt['awards'],
'permission' => array('manage_awards'),
'areas' => array(
'awards' => array(
'label' => $txt['awards'],
'file' => 'ManageAwards.php',
'function' => 'Awards',
'icon' => 'awards.gif',
),
),
),

for no flyouts

You will have to update that array and the main manageawards.php function if you want those flyouts as first child and not second, and no don't even ask ;)

Spuds

Quote from: MaNaRa on August 21, 2011, 08:56:27 PM
I have a question...
If I'd like to frame the awards at a kind of box like this, what should I do?
Thats what it does by default unless you altered the css .... the awards should be wrapped in <fieldset style="border: 1px solid black; padding: 5px;"> .... </fieldset> ... maybe change the black to white or grey since you are using a dark theme

digitalmikey

Worked perfectly that time. Thanks Spuds!

polska32

Got awards to work, everything works fine but many of the buttons are missing.

imageshack.us/photo/my-images/32/unledrwg.png/

Using version RC3

Spuds

Make sure the awards directory (that came with the package) is available in your custom theme ... /Themes/your theme/images/Awards   ... there are 4 or 5 files in that directory for the menu system.

polska32

Nope I am missing that, what should I do?/

polska32


Advertisement: