Version 3.4.5
This commit is contained in:
1 parent
fb6b5baabc
commit
e4478369d8
1360 files changed
+228921
-179445
No files matched your search
@@ -3,9 +3,9 @@
|
||||
/**
|
||||
* <pre>
|
||||
* Invision Power Services
|
||||
* IP.Board v3.3.4
|
||||
* IP.Board v3.4.5
|
||||
* Admin CP global skin templates
|
||||
* Last Updated: $Date: 2012-06-12 10:14:49 -0400 (Tue, 12 Jun 2012) $
|
||||
* Last Updated: $Date: 2013-05-20 18:47:20 -0400 (Mon, 20 May 2013) $
|
||||
* </pre>
|
||||
*
|
||||
* @author $Author: bfarber $
|
||||
@@ -13,7 +13,7 @@
|
||||
* @license http://www.invisionpower.com/company/standards.php#license
|
||||
* @package IP.Board
|
||||
* @link http://www.invisionpower.com
|
||||
* @version $Rev: 10914 $
|
||||
* @version $Rev: 12262 $
|
||||
* @since 3.0.0
|
||||
*
|
||||
*/
|
||||
@@ -61,6 +61,60 @@ EOF;
|
||||
return $IPBHTML;
|
||||
}
|
||||
|
||||
/**
|
||||
* manageBookmarks
|
||||
*
|
||||
* @param array Bookmarks
|
||||
* @return @e string
|
||||
*/
|
||||
public function manageBookmarks( $bookmarks )
|
||||
{
|
||||
|
||||
$IPBHTML = "";
|
||||
//--starthtml--//
|
||||
|
||||
$IPBHTML .= <<<EOF
|
||||
<h3>{$this->lang->words['bookmarks_title']}</h3>
|
||||
<div class='ipsPad fixed_inner'>
|
||||
<div class='right desctext'>{$this->lang->words['bookmarks_make_home']}</div>
|
||||
<br />
|
||||
<ul id='sortable'>
|
||||
EOF;
|
||||
|
||||
foreach( $bookmarks as $id => $data )
|
||||
{
|
||||
$url = IPSText::truncate( $data['bookmark_url'], 42 );
|
||||
$sel = ( $data['bookmark_home'] ) ? ' checked="checked" ' : '';
|
||||
$pos = intval( $data['bookmark_pos'] );
|
||||
|
||||
$IPBHTML .= <<<EOF
|
||||
<li data-rowid='{$id}' id='bookmark_{$id}'>
|
||||
<span class="draghandle"></span>
|
||||
<div class='right'>
|
||||
<input type='checkbox' data-cboxid='{$id}' name='bookmarkHome[{$id}]' value='{$id}' {$sel}>
|
||||
<img src="{$this->settings['skin_acp_url']}/images/aff_cross.png" data-deleteid="{$id}" class='clickable' />
|
||||
</div>
|
||||
<input type='text' class='input_text' size='60' data-inputname="{$id}" name='bookmarkName[{$id}]' value='{$data['bookmark_title']}' />
|
||||
<span class='desctext'><a href="{$this->settings['_base_url']}&{$data['bookmark_url']}" target="_blank">{$url}</a></span>
|
||||
</li>
|
||||
EOF;
|
||||
}
|
||||
|
||||
$IPBHTML .= <<<EOF
|
||||
</ul>
|
||||
<div class='ipsPad'><input type='button' id='saveBookmarksManage' class='realbutton right' value='{$this->lang->words['bookmarks_save']}' /></div>
|
||||
</div>
|
||||
<script type="text/javascript">
|
||||
(function($){
|
||||
$("#sortable").sortable();
|
||||
}(jQuery));
|
||||
</script>
|
||||
EOF;
|
||||
|
||||
//--endhtml--//
|
||||
return $IPBHTML;
|
||||
}
|
||||
|
||||
//===========================================================================
|
||||
// <ips:ips_editor:desc::trigger:>
|
||||
//===========================================================================
|
||||
@@ -83,32 +137,39 @@ if ( ! $this->_editorJsLoaded )
|
||||
if ( defined("CK_LOAD_SOURCE") AND CK_LOAD_SOURCE )
|
||||
{
|
||||
$IPBHTML .= <<<EOF
|
||||
<script type="text/javascript" src="{$this->settings['public_dir']}js/3rd_party/ckeditor/ckeditor_source.js"></script>
|
||||
<script type="text/javascript" src="{$this->settings['js_base_url']}js/3rd_party/ckeditor/ckeditor_source.js"></script>
|
||||
EOF;
|
||||
}
|
||||
else
|
||||
{
|
||||
$IPBHTML .= <<<EOF
|
||||
<script type="text/javascript" src="{$this->settings['public_dir']}js/3rd_party/ckeditor/ckeditor.js"></script>
|
||||
<script type="text/javascript" src="{$this->settings['js_base_url']}js/3rd_party/ckeditor/ckeditor.js"></script>
|
||||
EOF;
|
||||
}
|
||||
|
||||
$CmdVAsPlainText = ( $this->memberData['bw_paste_plain'] ) ? 'true' : 'false';
|
||||
|
||||
$IPBHTML .= <<<EOF
|
||||
<script type="text/javascript" src='{$this->settings['cache_dir']}lang_cache/{$this->lang->lang_id}/ipb.lang.js' charset='{$this->settings['gb_char_set']}'></script>
|
||||
<script type="text/javascript" src="{$this->settings['public_dir']}js/ips.textEditor.js"></script>
|
||||
<script type="text/javascript" src="{$this->settings['js_base_url']}js/ips.textEditor.js"></script>
|
||||
<script type="text/javascript" src="{$this->settings['js_base_url']}js/ips.textEditor.bbcode.js"></script>
|
||||
<script type="text/javascript">
|
||||
/* Dynamic items */
|
||||
CKEDITOR.config.IPS_BBCODE = {$bbcode};
|
||||
CKEDITOR.config.IPS_BBCODE_IMG_URL = "{$this->settings['public_dir']}style_extra/bbcode_icons";
|
||||
CKEDITOR.config.IPS_BBCODE_IMG_URL = "{$this->settings['js_base_url']}style_extra/bbcode_icons";
|
||||
CKEDITOR.config.IPS_BBCODE_BUTTONS = [];
|
||||
|
||||
/* Has to go before config load */
|
||||
var IPS_smiley_path = "{$this->settings['emoticons_url']}/";
|
||||
var IPS_smiles = {$options['smilies']};
|
||||
var IPS_remove_plugins = [];
|
||||
var IPS_extra_plugins = [];
|
||||
|
||||
/* Load our configuration */
|
||||
CKEDITOR.config.customConfig = '{$this->settings['public_dir']}js/3rd_party/ckeditor/ips_config.js';
|
||||
CKEDITOR.config.customConfig = '{$this->settings['js_base_url']}js/3rd_party/ckeditor/ips_config.js';
|
||||
|
||||
/* Override with prefs */
|
||||
CKEDITOR.config.CmdVAsPlainText = {$CmdVAsPlainText};
|
||||
</script>
|
||||
<style type="text/css">
|
||||
@import url("{$this->settings['css_base_url']}style_css/css_{$defaultSkin}/ipb_ckeditor.css");
|
||||
@@ -117,19 +178,25 @@ EOF;
|
||||
}
|
||||
|
||||
$options['noSmilies'] = intval($options['noSmilies']);
|
||||
$options['isRte'] = intval($options['isRte']);
|
||||
$options['isHtml'] = intval($options['isHtml']);
|
||||
$options['autoSaveKey'] = $options['autoSaveKey'] ? $options['autoSaveKey'] : '';
|
||||
$jsonEncoded = IPSText::jsonEncodeForTemplate( $autoSaveData );
|
||||
|
||||
$IPBHTML .= <<<EOF
|
||||
<input type='hidden' name='noSmilies' id='noSmilies_{$options['editorName']}' value='{$options['noSmilies']}' />
|
||||
<textarea id="{$options['editorName']}" name="{$formField}" class='ips_EditorTextArea'>{$content}</textarea>
|
||||
<a id="ips_switchEditor" style="display:none" href="javascript:void()">Switch to Rich Text Editor</a>
|
||||
<span id='editor_html_message_{$options['editorName']}'> </span>
|
||||
<script type="text/javascript">
|
||||
ipb.textEditor.initialize('{$options['editorName']}', { type: '{$options['type']}',
|
||||
minimize: {$options['minimize']},
|
||||
bypassCKEditor: {$options['bypassCKEditor']},
|
||||
isRte: {$options['isRte']},
|
||||
isHtml: {$options['isHtml']},
|
||||
noSmilies: {$options['noSmilies']},
|
||||
ips_AutoSaveKey: '',
|
||||
ips_AutoSaveData: {} } );
|
||||
ips_AutoSaveKey: '{$options['autoSaveKey']}',
|
||||
ips_AutoSaveData: {$jsonEncoded} } );
|
||||
</script>
|
||||
EOF;
|
||||
//--endhtml--//
|
||||
@@ -365,7 +432,7 @@ $boardurl = ($this->registry->output->isHTTPS) ? $this->settings['board_url_http
|
||||
|
||||
$IPBHTML .= <<<EOF
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
<html xml:lang="en" lang="en" xmlns="http://www.w3.org/1999/xhtml">
|
||||
<html xml:lang="ru" lang="ru" xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<meta http-equiv="content-type" content="text/html; charset={$IPS_DOC_CHAR_SET}" />
|
||||
<meta http-equiv="Pragma" content="no-cache" />
|
||||
@@ -498,9 +565,9 @@ HTML;
|
||||
else
|
||||
{*/
|
||||
$IPBHTML .= <<<HTML
|
||||
<script type="text/javascript" src="{$this->settings['public_dir']}js/3rd_party/prototype.js?ipbv={$this->registry->output->antiCacheHash}"></script>
|
||||
<script type='text/javascript' src='{$this->settings['public_dir']}js/3rd_party/scriptaculous/scriptaculous-cache.js?ipbv={$this->registry->output->antiCacheHash}'></script>
|
||||
<script type="text/javascript" src='{$this->settings['public_dir']}js/ipb.js?ipbv={$this->registry->output->antiCacheHash}&load={$this->settings['extraJsModules']}'></script>
|
||||
<script type="text/javascript" src="{$this->settings['js_base_url']}js/3rd_party/prototype.js?ipbv={$this->registry->output->antiCacheHash}"></script>
|
||||
<script type='text/javascript' src='{$this->settings['js_base_url']}js/3rd_party/scriptaculous/scriptaculous-cache.js?ipbv={$this->registry->output->antiCacheHash}'></script>
|
||||
<script type="text/javascript" src='{$this->settings['js_base_url']}js/ipb.js?ipbv={$this->registry->output->antiCacheHash}&load={$this->settings['extraJsModules']}'></script>
|
||||
<script type='text/javascript' src='{$this->settings['js_main_url']}acp.menu.js?ipbv={$this->registry->output->antiCacheHash}'></script>
|
||||
<script type='text/javascript' src='{$this->settings['js_main_url']}acp.js?ipbv={$this->registry->output->antiCacheHash}'></script>
|
||||
<script type="text/javascript" src='{$this->settings['js_main_url']}acp.tabs.js?ipbv={$this->registry->output->antiCacheHash}'></script>
|
||||
@@ -568,7 +635,7 @@ return $IPBHTML;
|
||||
* @param array Order of tabs
|
||||
* @return string HTML
|
||||
*/
|
||||
public function global_main_wrapper($IPS_DOC_CHAR_SET=IPS_DOC_CHAR_SET, $cssFiles=array(), $gbl_sub_menu='', $tabOrder=array() ) {
|
||||
public function global_main_wrapper($IPS_DOC_CHAR_SET=IPS_DOC_CHAR_SET, $cssFiles=array(), $gbl_sub_menu='', $mainTabData, $otherTabData, $bookMarks=array() ) {
|
||||
|
||||
$IPBHTML = "";
|
||||
//--starthtml--//
|
||||
@@ -648,14 +715,21 @@ else
|
||||
|
||||
if( ( !$licenseData OR !$licenseData['key']['_expires'] OR $licenseData['key']['_expires'] < IPS_UNIX_TIME_NOW and $licenseData['key']['_expires'] != -1 ) AND !IPSCookie::get( 'ignore-license-notice' ) )
|
||||
{
|
||||
$extra_class = 'expired_license';
|
||||
$license_html = <<<HTML
|
||||
<div id='license_notice_expired'>
|
||||
<div class='right'><a id='license-close' href='#'>Close</a></div>
|
||||
<h4>{$this->lang->words['license_expired_header']}</h4>
|
||||
<p>{$this->lang->words['license_expired_info']}</p>
|
||||
</div>
|
||||
if ( $licenseData['_cached_date'] < $licenseData['key']['_expires'] )
|
||||
{
|
||||
$this->cache->rebuildCache( 'licenseData' );
|
||||
}
|
||||
else
|
||||
{
|
||||
$extra_class = 'expired_license';
|
||||
$license_html = <<<HTML
|
||||
<div id='license_notice_expired'>
|
||||
<div class='right'><a id='license-close' href='#'>Close</a></div>
|
||||
<h4>{$this->lang->words['license_expired_header']}</h4>
|
||||
<p>{$this->lang->words['license_expired_info']}</p>
|
||||
</div>
|
||||
HTML;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -663,7 +737,7 @@ $boardurl = ($this->registry->output->isHTTPS) ? $this->settings['board_url_http
|
||||
|
||||
$IPBHTML .= <<<HTML
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
<html xml:lang="en" lang="en" xmlns="http://www.w3.org/1999/xhtml">
|
||||
<html xml:lang="ru" lang="ru" xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<meta http-equiv="content-type" content="text/html; charset={$IPS_DOC_CHAR_SET}" />
|
||||
<meta http-equiv="Pragma" content="no-cache" />
|
||||
@@ -807,9 +881,9 @@ HTML;
|
||||
else
|
||||
{*/
|
||||
$IPBHTML .= <<<HTML
|
||||
<script type="text/javascript" src="{$this->settings['public_dir']}js/3rd_party/prototype.js?ipbv={$this->registry->output->antiCacheHash}"></script>
|
||||
<script type='text/javascript' src='{$this->settings['public_dir']}js/3rd_party/scriptaculous/scriptaculous-cache.js?ipbv={$this->registry->output->antiCacheHash}'></script>
|
||||
<script type="text/javascript" src='{$this->settings['public_dir']}js/ipb.js?ipbv={$this->registry->output->antiCacheHash}&load={$this->settings['extraJsModules']}'></script>
|
||||
<script type="text/javascript" src="{$this->settings['js_base_url']}js/3rd_party/prototype.js?ipbv={$this->registry->output->antiCacheHash}"></script>
|
||||
<script type='text/javascript' src='{$this->settings['js_base_url']}js/3rd_party/scriptaculous/scriptaculous-cache.js?ipbv={$this->registry->output->antiCacheHash}'></script>
|
||||
<script type="text/javascript" src='{$this->settings['js_base_url']}js/ipb.js?ipbv={$this->registry->output->antiCacheHash}&load={$this->settings['extraJsModules']}'></script>
|
||||
<script type='text/javascript' src='{$this->settings['js_main_url']}acp.menu.js?ipbv={$this->registry->output->antiCacheHash}'></script>
|
||||
<script type='text/javascript' src='{$this->settings['js_main_url']}acp.js?ipbv={$this->registry->output->antiCacheHash}'></script>
|
||||
<script type="text/javascript" src='{$this->settings['js_main_url']}acp.tabs.js?ipbv={$this->registry->output->antiCacheHash}'></script>
|
||||
@@ -833,8 +907,10 @@ else
|
||||
}
|
||||
|
||||
$mem_info = json_encode( array( 'g_mem_info' => $this->memberData['g_mem_info'] ) );
|
||||
$base_url = str_replace( '&', '&', $this->settings['_base_url'] );
|
||||
|
||||
$IPBHTML .= <<<HTML
|
||||
<script type='text/javascript' src='{$this->settings['cache_dir']}lang_cache/{$this->lang->lang_id}/ipb.lang.js?ipbv={$this->registry->output->antiCacheHash}'></script>
|
||||
<script type="text/javascript" src="{$this->settings['cache_dir']}lang_cache/{$this->lang->lang_id}/acp.lang.js?ipbv={$this->registry->output->antiCacheHash}" charset="{$IPS_DOC_CHAR_SET}"></script>
|
||||
<script type='text/javascript' src='{$this->settings['js_main_url']}3rd_party/jquery.min.js?ipbv={$this->registry->output->antiCacheHash}'></script>
|
||||
<script type='text/javascript' src='{$this->settings['js_main_url']}3rd_party/jquery-ui.min.js?ipbv={$this->registry->output->antiCacheHash}'></script>
|
||||
@@ -845,9 +921,10 @@ $IPBHTML .= <<<HTML
|
||||
<script type='text/javascript'>
|
||||
//<![CDATA[
|
||||
ipb.vars['st'] = "{$this->request['st']}";
|
||||
ipb.vars['base_url'] = "{$this->settings['_base_url']}";
|
||||
ipb.vars['base_url'] = "{$base_url}";
|
||||
ipb.vars['front_url'] = "{$this->settings['board_url']}/index.php?";
|
||||
ipb.vars['app_url'] = "{$this->settings['base_url']}";
|
||||
ipb.vars['upload_url'] = "{$this->settings['upload_url']}";
|
||||
ipb.vars['image_url'] = "{$this->settings['skin_app_url']}images/";
|
||||
ipb.vars['image_acp_url'] = "{$this->settings['skin_acp_url']}/images/";
|
||||
ipb.vars['md5_hash'] = "{$this->member->form_hash}";
|
||||
@@ -864,6 +941,7 @@ $IPBHTML .= <<<HTML
|
||||
ipb.templates['ajax_loading'] = "<div id='ajax_loading'>{$this->lang->words['gl_loading']}</div>";
|
||||
ipb.templates['global_notify'] = new Template("<div class='popupWrapper'><div class='popupInner'><div class='ipsPad'>#{message} #{close}</div></div></div>");
|
||||
ipb.templates['global_notify_close'] = "<span id='ipsGlobalNotification_close' class='realbutton'>{$this->lang->words['gbl_ok']}</span>";
|
||||
ipb.templates['acp_bookmark_add'] = new Template("<h3>{$this->lang->words['bookmarks_add_title']}</h3><div class='ipsPad' id='bmcontent'>{$this->lang->words['bookmarks_add_field_title']} <input type='text' class='input_text' style='width:99%' name='bookmarkTitle' value='#{title}' /><br /><input type='checkbox' name='homePage' value='1' /> <span class='desctext'>{$this->lang->words['bookmarks_add_field_home']}</span><br /><br /><div style='text-align:center'><input type='button' class='realbutton' value='{$this->lang->words['bookmarks_save']}' /></div></div>" );
|
||||
//]]>
|
||||
</script>
|
||||
<script type='text/javascript'>
|
||||
@@ -871,7 +949,7 @@ $IPBHTML .= <<<HTML
|
||||
acp = new IPBACP;
|
||||
</script>
|
||||
</head>
|
||||
<body id='ipboard_body' class='{$extra_class} clearfix'>
|
||||
<body id='ipboard_body' data-bookmarkurl="{$bookMarks['url']}" data-bookmarkable="{$bookMarks['can']}" data-bookmarked="{$bookMarks['has']}" class='{$extra_class} clearfix'>
|
||||
<!-- Inline Form Box -->
|
||||
<div id='modal' style='display: none'></div>
|
||||
{$license_html}
|
||||
@@ -979,10 +1057,14 @@ $IPBHTML .= <<<HTML
|
||||
</div>
|
||||
<img src='{$this->settings['skin_acp_url']}/images/live_search_stem.png' id='ls_stem' />
|
||||
</div>
|
||||
<!-- pre load -->
|
||||
<img src='{$this->settings['skin_acp_url']}/images/icons/bookmark_white_20.png' style='display:none' />
|
||||
<img src='{$this->settings['skin_acp_url']}/images/icons/bookmark_grey_20.png' style='display:none' />
|
||||
<div id='app_bar'>
|
||||
<!--<a class='right' id='edit_tabs' href='#' title="Set up the app bar just the way you want">Edit Tabs</a>-->
|
||||
<a class='right' id='edit_tabs' href='#' title="{$this->lang->words['set_up_tabs']}">{$this->lang->words['edit_tabs']}</a>
|
||||
|
||||
HTML;
|
||||
$IPBHTML .= $this->global_app_menu_html( $gbl_sub_menu, $tabOrder );
|
||||
$IPBHTML .= $this->global_app_menu_html( $gbl_sub_menu, $mainTabData, $otherTabData );
|
||||
|
||||
$IPBHTML .= <<<HTML
|
||||
</div>
|
||||
@@ -1013,13 +1095,26 @@ $IPBHTML .= <<<HTML
|
||||
HTML;
|
||||
}
|
||||
|
||||
$acpUrl = str_replace( '&', '&', $this->settings['_base_url'] );
|
||||
|
||||
$IPBHTML .= <<<HTML
|
||||
</div>
|
||||
|
||||
<script type='text/javascript'>
|
||||
jQuery.extend(true, ips,
|
||||
{
|
||||
member: { member_id: parseInt( $this->memberData['member_id'] ) },
|
||||
acpUrl: '{$acpUrl}',
|
||||
rootUrl: '{$this->settings['board_url']}',
|
||||
publicUrl: '{$this->settings['board_url']}/index.php?}',
|
||||
publicImageUrl: "{$this->settings['skin_app_url']}images/",
|
||||
acpImageUrl: "{$this->settings['skin_acp_url']}/images/",
|
||||
formToken: '{$this->member->form_hash}',
|
||||
bookmarksJSON: {$bookMarks['jsn']}
|
||||
} );
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
||||
HTML;
|
||||
|
||||
//--endhtml--//
|
||||
return $IPBHTML;
|
||||
}
|
||||
@@ -1153,7 +1248,7 @@ return $return;
|
||||
* @param array Tab order
|
||||
* @return string HTML
|
||||
*/
|
||||
public function global_app_menu_html( $raw_menu, $tabOrder ) {
|
||||
public function global_app_menu_html( $raw_menu, $mainTabData, $otherTabData ) {
|
||||
|
||||
$fakeAppAccess = array();
|
||||
|
||||
@@ -1162,84 +1257,48 @@ $IPBHTML = "";
|
||||
|
||||
$menus = $this->global_menu_sub_navigation( $raw_menu );
|
||||
|
||||
$curApp = array();
|
||||
$defaultFakeApp = array();
|
||||
$defaultFakeModule = array();
|
||||
|
||||
switch( ipsRegistry::$current_application )
|
||||
{
|
||||
case 'forums':
|
||||
$curApp['forums'] = 'active';
|
||||
break;
|
||||
case 'core':
|
||||
$curApp['core'] = 'active';
|
||||
break;
|
||||
case 'members':
|
||||
$curApp['members'] = 'active';
|
||||
break;
|
||||
default:
|
||||
$curApp['other'] = 'active';
|
||||
break;
|
||||
}
|
||||
|
||||
//print_r( $menus );
|
||||
$fakeApps = $this->registry->output->fetchFakeApps();
|
||||
|
||||
foreach( $fakeApps as $fa => $data )
|
||||
{
|
||||
$fakeAppAccess[ $fa ] = FALSE;
|
||||
foreach( $data as $appData )
|
||||
{
|
||||
if ( !$fakeAppAccess[ $fa ] and ipsRegistry::getClass('class_permissions')->checkForModuleAccess( $appData['app'], $appData['module'] ) )
|
||||
{
|
||||
$fakeAppAccess[ $fa ] = TRUE;
|
||||
}
|
||||
|
||||
if ( ! $defaultFakeApp[ $fa ] )
|
||||
{
|
||||
$defaultFakeApp[ $fa ] = $appData['app'];
|
||||
$defaultFakeModule[ $fa ] = $appData['module'];
|
||||
}
|
||||
|
||||
if ( $appData['app'] == ipsRegistry::$current_application && $appData['module'] == ipsRegistry::$current_module )
|
||||
{
|
||||
$curApp = array();
|
||||
$curApp[ $fa ] = 'active';
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
$IPBHTML .= <<<HTML
|
||||
<ul id='app_menu' class='app_menu'>
|
||||
<li>
|
||||
<a href='#' id='bookmarks_button'><img src='{$this->settings['skin_acp_url']}/images/icons/bookmark_white_20.png' /></a>
|
||||
<ul id='bookmarks_items' class='right' style='display:none'></ul>
|
||||
</li>
|
||||
HTML;
|
||||
|
||||
$applications = ipsRegistry::$applications;
|
||||
$count = 0;
|
||||
$this->registry->getClass('class_permissions')->return = 1;
|
||||
$other_menu = "";
|
||||
$count = 0;
|
||||
$other_menu = "";
|
||||
$otherIsActive = false;
|
||||
|
||||
/* Loop */
|
||||
foreach( $applications as $app_dir => $app_data )
|
||||
foreach( $otherTabData as $tabkey => $data )
|
||||
{
|
||||
$tag = '';
|
||||
|
||||
if ( in_array( $app_data['app_directory'], array( 'core', 'forums', 'members' ) ) || $this->registry->getClass('class_permissions')->checkForAppAccess( $app_data['app_directory'] ) !== TRUE || ! $applications[ $app_dir ]['app_enabled'] )
|
||||
if ( ! $data['isEnabled'] || ! $data['permCheck'] )
|
||||
{
|
||||
continue;
|
||||
}
|
||||
|
||||
if( $app_data['app_location'] == 'ips' )
|
||||
|
||||
if ( $data['active'] )
|
||||
{
|
||||
$otherIsActive = true;
|
||||
}
|
||||
|
||||
if ( ipsRegistry::$applications[ $data['appDir'] ]['app_location'] == 'ips' || ipsRegistry::$applications[ $data['appDir'] ]['app_location'] == 'root' )
|
||||
{
|
||||
$tag = "<span class='ipsBadge badge_purple'>{$this->lang->words['gl_ipsapp']}</span> ";
|
||||
}
|
||||
|
||||
$other_menu .= <<<EOF
|
||||
<li id='app_{$app_dir}'>
|
||||
<a href='{$this->settings['_base_url']}app={$app_data['app_directory']}'>
|
||||
<li id='app_{$data['appDir']}'>
|
||||
<a href='{$data['url']}'>
|
||||
{$tag}
|
||||
{$app_data['app_title']}
|
||||
{$data['title']}
|
||||
</a>
|
||||
{$menus[ $app_dir ]}
|
||||
{$menus[ $tabkey ]}
|
||||
</li>
|
||||
EOF;
|
||||
$count++;
|
||||
@@ -1249,62 +1308,29 @@ EOF;
|
||||
// Draw tabs based on order preference
|
||||
//-----------------------------------------
|
||||
|
||||
foreach( $tabOrder as $tabkey )
|
||||
foreach( $mainTabData as $tabkey => $data )
|
||||
{
|
||||
if( $tabkey == 'other' AND !$count )
|
||||
if ( $tabkey == 'other' )
|
||||
{
|
||||
continue;
|
||||
if ( ! $count )
|
||||
{
|
||||
continue;
|
||||
}
|
||||
|
||||
$data['active'] = $otherIsActive;
|
||||
}
|
||||
|
||||
$permCheck = TRUE;
|
||||
switch( $tabkey )
|
||||
{
|
||||
case 'core':
|
||||
$title = $this->lang->words['gl_system'];
|
||||
$link = "{$this->settings['_base_url']}app=core";
|
||||
$permCheck = ipsRegistry::getClass('class_permissions')->checkForAppAccess( 'core' );
|
||||
break;
|
||||
|
||||
case 'forums':
|
||||
$title = $this->lang->words['gl_forums'];
|
||||
$link = "{$this->settings['_base_url']}app=forums";
|
||||
$permCheck = ipsRegistry::getClass('class_permissions')->checkForAppAccess( 'forums' );
|
||||
break;
|
||||
|
||||
case 'members':
|
||||
$title = $this->lang->words['gl_members'];
|
||||
$link = "{$this->settings['_base_url']}app=members";
|
||||
$permCheck = ipsRegistry::getClass('class_permissions')->checkForAppAccess( 'members' );
|
||||
break;
|
||||
|
||||
case 'lookfeel':
|
||||
$title = $this->lang->words['gl_lookandfeel'];
|
||||
$link = "{$this->settings['_base_url']}app={$defaultFakeApp['lookfeel']}&module={$defaultFakeModule['lookfeel']}";
|
||||
$permCheck = $fakeAppAccess['lookfeel'];
|
||||
break;
|
||||
|
||||
case 'support':
|
||||
$title = $this->lang->words['gl_support'];
|
||||
$link = "{$this->settings['_base_url']}app=core&module=diagnostics";
|
||||
$permCheck = $fakeAppAccess['support'];
|
||||
break;
|
||||
|
||||
case 'reports':
|
||||
$title = $this->lang->words['gl_reportsmenu'];
|
||||
$link = "{$this->settings['_base_url']}app={$defaultFakeApp['reports']}&module={$defaultFakeModule['reports']}";
|
||||
$permCheck = $fakeAppAccess['reports'];
|
||||
break;
|
||||
}
|
||||
|
||||
if ( !$permCheck )
|
||||
if ( ! $data['isEnabled'] || ! $data['permCheck'] )
|
||||
{
|
||||
continue;
|
||||
}
|
||||
|
||||
|
||||
$class = ( $data['active'] ) ? 'active' : '';
|
||||
|
||||
if( $tabkey == 'other' )
|
||||
{
|
||||
$IPBHTML .= <<<HTML
|
||||
<li class='{$curApp['other']}'>
|
||||
<li class='{$class}'>
|
||||
<a href='{$this->settings['_base_url']}app=core&module=applications&section=applications&do=applications_overview'>{$this->lang->words['other_applications']}</a>
|
||||
<ul id='menu__other' style='display: none'>
|
||||
{$other_menu}
|
||||
@@ -1315,8 +1341,8 @@ HTML;
|
||||
else
|
||||
{
|
||||
$IPBHTML .= <<<HTML
|
||||
<li class='{$curApp[$tabkey]}'>
|
||||
<a href='{$link}'>{$title}</a>
|
||||
<li class='{$class}'>
|
||||
<a href='{$data['url']}'>{$data['title']}</a>
|
||||
{$menus[ $tabkey ]}
|
||||
</li>
|
||||
HTML;
|
||||
@@ -1391,7 +1417,7 @@ $IPBHTML = "";
|
||||
|
||||
$IPBHTML .= <<<EOF
|
||||
<br /><br />
|
||||
<div align='center' style='margin-left:auto;margin-right:0'>
|
||||
<div align='center' class='clear' style='margin-left:auto;margin-right:0'>
|
||||
<div class='acp-box' style='text-align:left;'>
|
||||
<h3>{$this->lang->words['gbl_queries']}</h3>
|
||||
<div style='overflow:auto'>{$queries}</div>
|
||||
@@ -1480,9 +1506,16 @@ $IPBHTML = "";
|
||||
$IPS_DOC_CHAR_SET = IPS_DOC_CHAR_SET;
|
||||
$publicDirectory = PUBLIC_DIRECTORY;
|
||||
|
||||
if ( $this->settings['logins_over_https'] )
|
||||
{
|
||||
$this->settings['skin_acp_url'] = str_replace( 'http://', 'https://', $this->settings['skin_acp_url'] );
|
||||
$this->settings['public_dir'] = str_replace( 'http://', 'https://', $this->settings['public_dir'] );
|
||||
$this->settings['js_main_url'] = str_replace( 'http://', 'https://', $this->settings['js_main_url'] );
|
||||
}
|
||||
|
||||
$IPBHTML .= <<<HTML
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||
<html xml:lang="en" lang="en" xmlns="http://www.w3.org/1999/xhtml">
|
||||
<html xml:lang="ru" lang="ru" xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<meta http-equiv="content-type" content="text/html; charset={$IPS_DOC_CHAR_SET}" />
|
||||
<meta http-equiv="Pragma" content="no-cache" />
|
||||
@@ -1554,9 +1587,9 @@ HTML;
|
||||
else
|
||||
{*/
|
||||
$IPBHTML .= <<<HTML
|
||||
<script type="text/javascript" src="{$this->settings['public_dir']}js/3rd_party/prototype.js?ipbv={$this->registry->output->antiCacheHash}"></script>
|
||||
<script type='text/javascript' src='{$this->settings['public_dir']}js/3rd_party/scriptaculous/scriptaculous-cache.js?ipbv={$this->registry->output->antiCacheHash}'></script>
|
||||
<script type="text/javascript" src='{$this->settings['public_dir']}js/ipb.js?ipbv={$this->registry->output->antiCacheHash}&load={$this->settings['extraJsModules']}'></script>
|
||||
<script type="text/javascript" src="{$this->settings['js_base_url']}js/3rd_party/prototype.js?ipbv={$this->registry->output->antiCacheHash}"></script>
|
||||
<script type='text/javascript' src='{$this->settings['js_base_url']}js/3rd_party/scriptaculous/scriptaculous-cache.js?ipbv={$this->registry->output->antiCacheHash}'></script>
|
||||
<script type="text/javascript" src='{$this->settings['js_base_url']}js/ipb.js?ipbv={$this->registry->output->antiCacheHash}&load={$this->settings['extraJsModules']}'></script>
|
||||
<script type='text/javascript' src='{$this->settings['js_main_url']}acp.menu.js?ipbv={$this->registry->output->antiCacheHash}'></script>
|
||||
<script type='text/javascript' src='{$this->settings['js_main_url']}acp.js?ipbv={$this->registry->output->antiCacheHash}'></script>
|
||||
<script type="text/javascript" src='{$this->settings['js_main_url']}acp.tabs.js?ipbv={$this->registry->output->antiCacheHash}'></script>
|
||||
@@ -1691,9 +1724,9 @@ $IPBHTML .= <<<EOF
|
||||
jsDebug = 0;
|
||||
USE_RTE = 0;
|
||||
</script>
|
||||
<script type="text/javascript" src="{$this->settings['public_dir']}js/3rd_party/prototype.js?ipbv={$this->registry->output->antiCacheHash}"></script>
|
||||
<script type='text/javascript' src='{$this->settings['public_dir']}js/3rd_party/scriptaculous/scriptaculous-cache.js?ipbv={$this->registry->output->antiCacheHash}'></script>
|
||||
<script type="text/javascript" src='{$this->settings['public_dir']}js/ipb.js?ipbv={$this->registry->output->antiCacheHash}&load={$this->settings['extraJsModules']}'></script>
|
||||
<script type="text/javascript" src="{$this->settings['js_base_url']}js/3rd_party/prototype.js?ipbv={$this->registry->output->antiCacheHash}"></script>
|
||||
<script type='text/javascript' src='{$this->settings['js_base_url']}js/3rd_party/scriptaculous/scriptaculous-cache.js?ipbv={$this->registry->output->antiCacheHash}'></script>
|
||||
<script type="text/javascript" src='{$this->settings['js_base_url']}js/ipb.js?ipbv={$this->registry->output->antiCacheHash}&load={$this->settings['extraJsModules']}'></script>
|
||||
<script type='text/javascript' src='{$this->settings['js_main_url']}acp.js?ipbv={$this->registry->output->antiCacheHash}'></script>
|
||||
<script type="text/javascript" src='{$this->settings['js_main_url']}acp.tabs.js?ipbv={$this->registry->output->antiCacheHash}'></script>
|
||||
<script type="text/javascript">
|
||||
|
||||
Reference in new issue
Block a user