function globalTemplate($html, $documentHeadItems, $css, $jsModules, $metaTags, $header_items = array(), $items = array(), $footer_items = array(), $stats = array()) { $IPBHTML = ""; $this->memberData['members_editor_choice'] = 'std'; $this->templateVars['forumActive'] = ""; $this->__default__templateVars['forumActive'] = ""; if (IPS_APP_COMPONENT == 'forums') { $this->templateVars['forumActive'] = "active"; } else { $this->templateVars['forumActive'] = $this->__default__templateVars['forumActive']; } $this->templateVars['membersActive'] = ""; $this->__default__templateVars['membersActive'] = ""; if (IPS_APP_COMPONENT == 'members') { $this->templateVars['membersActive'] = "active"; } else { $this->templateVars['membersActive'] = $this->__default__templateVars['membersActive']; } $this->templateVars['helpActive'] = ""; $this->__default__templateVars['helpActive'] = ""; if (IPS_APP_COMPONENT == 'core' and $this->request['module'] == 'help') { $this->templateVars['helpActive'] = "active"; } else { $this->templateVars['helpActive'] = $this->__default__templateVars['helpActive']; } $this->did_first = 0; $IPBHTML .= "\t<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">\n\t<html xml:lang=\"en\" lang=\"en\" xmlns=\"http://www.w3.org/1999/xhtml\"" . (IPSLib::fbc_enabled() === TRUE ? " xmlns:fb=\"http://www.facebook.com/2008/fbml\"" : "") . ">\n\t<head>\n\t\t<meta http-equiv=\"content-type\" content=\"text/html; charset={$this->settings['gb_char_set']}\" />\n\t\t<title>{$header_items['title']}" . ($header_items['page'] ? " {$this->lang->words['page_title_page']} {$header_items['page']}" : "") . "</title>\n\t\t<link rel=\"shortcut icon\" href='" . ($this->registry->output->isHTTPS ? "{$this->settings['board_url_https']}" : "{$this->settings['board_url']}") . "/favicon.ico' />\n\t\t" . $this->registry->getClass('output')->getTemplate('global')->includeCSS($css) . "\n\t\t<!--<meta http-equiv=\"X-UA-Compatible\" content=\"IE=7\" />-->\n\t\t" . $this->registry->getClass('output')->getTemplate('global')->includeMeta($metaTags) . "" . $this->registry->getClass('output')->getTemplate('global')->includeFeeds($documentHeadItems) . "" . $this->registry->getClass('output')->getTemplate('global')->includeRTL() . "\t\t\n\t</head>\n\t<body id='ipboard_body'>\n\t\t<div id='ipbwrapper'>\n\t\t\t<p id='content_jump'><a id='top'></a><a href='#j_content' title='{$this->lang->words['jump_to_content']}' accesskey='m'>{$this->lang->words['jump_to_content']}</a></p>\n\t\t\t<div id='header'>\n\t\t\t\t<div id='branding'>\n\t\t\t\t\t<h1><a href='{$this->settings['board_url']}' title='{$this->settings['board_name']}'>{$this->settings['board_name']}</a>: {$header_items['title']}</h1>\n\t\t\t\t</div>\n\t\t\t\t\t\t\n\t\t\t\t" . ($this->memberData['member_id'] ? "<div id='user_navigation' class='logged_in'>\n\t\t\t\t\t\t<div id='user_info'>\n\t\t\t\t\t\t\t<p>\n\t\t\t\t\t\t\t\t<span class='hide'>{$this->lang->words['logged_in_as']} </span>\n\t\t\t\t\t\t\t\t<a id='user_link' class='ipbmenu' href=\"" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("showuser={$this->memberData['member_id']}", 'public', ''), "{$this->memberData['members_seo_name']}", "showuser") . "\" title='{$this->lang->words['your_profile']}'>{$this->memberData['members_display_name']}</a>\n\t\t\t\t\t\t\t</p>\n\t\t\t\t\t\t\t<ul id='user_link_menucontent'>\n\t\t\t\t\t\t\t\t<li id='user_profile'><a href='" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("showuser={$this->memberData['member_id']}", 'public', ''), "{$this->memberData['members_seo_name']}", "showuser") . "' title='{$this->lang->words['your_profile']}'>{$this->lang->words['my_profile']}</a></li>\n\t\t\t\t\t\t\t\t<li id='user_ucp'><a href=\"" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=core&module=usercp", 'public', ''), "", "") . "\" title=\"{$this->lang->words['cp_tool_tip']}\">{$this->lang->words['your_cp']}</a></li>\n\t\t\t\t\t\t\t\t" . (($this->memberData['has_blog'] and IPSLib::appIsInstalled('blog')) ? "\n\t\t\t\t\t\t\t\t\t<li id='user_blog'><a href='" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=blog&module=display&section=blog&mid={$this->memberData['member_id']}", 'public', ''), "", "") . "' title=\"{$this->lang->words['go_to_my_blog']}\">{$this->lang->words['my_blog']}</a></li>\n\t\t\t\t\t\t\t\t" : "") . "\n\t\t\t\t\t\t\t\t" . (($this->memberData['has_gallery'] and IPSLib::appIsInstalled('gallery')) ? "\n\t\t\t\t\t\t\t\t\t<li id='user_gallery'><a href='" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=gallery&module=user&section=user&user={$this->memberData['member_id']}", 'public', ''), "", "") . "' title=\"{$this->lang->words['go_to_my_gallery']}\">{$this->lang->words['my_gallery']}</a></li>\n\t\t\t\t\t\t\t\t" : "") . "\n\t\t\t\t\t\t\t</ul>\n\t\t\t\t\t\t\t<ul id='user_other'>\n\t\t\t\t\t\t\t\t<li><a href=\"" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=core&module=global&section=login&do=logout&k={$this->member->form_hash}", 'public', ''), "", "") . "\">{$this->lang->words['log_out']}</a></li>\n\t\t\t\t\t\t\t\t" . ($this->memberData['member_group_id'] == $this->settings['auth_group'] ? "\n\t\t\t\t\t\t\t\t\t<li><strong><a href=\"" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=core&module=global&section=register&do=reval", 'public', ''), "", "") . "\" title='{$this->lang->words['resend_val']}'>{$this->lang->words['resend_val']}</a></strong></li>\n\t\t\t\t\t\t\t\t" : "") . "\n\t\t\t\t\t\t\t</ul>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>" : "\n\t\t\t\t\t<div id='user_navigation' class='not_logged_in'>\n\t\t\t\t\t\t<a href='" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=core&module=global&section=login", 'public', ''), "", "") . "' title='{$this->lang->words['sign_in']}'>" . $this->registry->getClass('output')->getReplacement("signin_icon") . " {$this->lang->words['sign_in']}</a>\n\t\t\t\t\t\t<a href=\"" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=core&module=global&section=register", 'public', ''), "", "") . "\" title='{$this->lang->words['register']}'>" . $this->registry->getClass('output')->getReplacement("register_icon") . " {$this->lang->words['register']}</a>\n\t\t\t\t\t</div>\n\t\t\t\t\n\t\t\t\t") . "\n\t\t\t\t\n\t\t\t\t<div id='primary_nav'>\n\t\t\t\t\t<ul>\n\t\t\t\t\t\t" . ($this->settings['home_url'] ? "\n\t\t\t\t\t\t\t<li id='nav_home' class='left'><a href='{$this->settings['home_url']}' title='{$this->lang->words['homepage_title']}' rel=\"home\">{$this->settings['home_name']}</a></li>\n\t\t\t\t\t\t" : "") . "\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<li id='nav_discussion' class='left " . $this->templateVars["forumActive"] . "'><a href='" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("act=idx", 'public', ''), "false", "") . "' title='{$this->lang->words['go_to_discussion']}'>{$this->lang->words['discussion']}</a></li>\n\t\t\t\t\t\t<li id='nav_members' class='left " . $this->templateVars["membersActive"] . "'><a href='" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=members&section=view&module=list", 'public', ''), "", "") . "' title='{$this->lang->words['go_to_memberlist']}'>{$this->lang->words['tb_mlist']}</a></li>\n\t\t\t\t\t\t" . ((is_array($header_items['applications']) and count($header_items['applications'])) ? "\n\t\t\t\t\t\t\t" . $this->__f__d0004aa108d971bd0446e860e5970bb4($html, $documentHeadItems, $css, $jsModules, $metaTags, $header_items, $items, $footer_items, $stats) . "\t\t\t\t\t\t" : "") . "\n\t\t\t\t\t</ul>\n\t\t\t\t</div>\n\t\t\t\n\t\t\t\t<div id='secondary_nav'>\n\t\t\t\t\t<ul id='breadcrumb' class='left'>\n\t\t\t\t\t\t\t\t\t\t\t\t" . ((!$this->settings['remove_forums_nav'] or ipsRegistry::$current_application == 'forums') ? "<li class='first'><a href='" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("act=idx", 'public', ''), "false", "") . "'>{$this->settings['board_name']}</a></li>\n\t\t\t\t\t\t\t" . (($this->did_first = 1) ? "" : "") . "" : "") . "\n\t\t\t\t\t\t" . $this->__f__6539d3f75039d4ef4002e1c7ad34f59c($html, $documentHeadItems, $css, $jsModules, $metaTags, $header_items, $items, $footer_items, $stats) . "\t\t\t\t\t</ul>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t\t<div id='content'>\n\t\t\t\t<a id='j_content'></a>\n\t\t\t\t" . ($html ? "{$html}" : "") . "\n\t\t\t\t<br class='clear' />\n\t\t\t</div>\n\t\t\t<div id='footer_utilities' class='clearfix clear rounded'>\n\t\t\t\t<h2 class='hide'>{$this->lang->words['skin_and_lang']}</h2>\n\t\t\t\t" . ($this->settings['allow_skins'] ? "" . (($this->memberData['userAgentLocked'] and !$this->memberData['userAgentBypass']) ? "\n\t\t\t\t\t\t<p id='useragent_msg'>\n\t\t\t\t\t\t\t{$this->lang->words['skin_browser_set']} <a href='" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("{$this->settings['query_string_formatted']}&unlockUserAgent=1", 'public', ''), "", "") . "'>{$this->lang->words['override_browser_theme']}</a>\n\t\t\t\t\t\t</p>\n\t\t\t\t\t" : "" . ($footer_items['skin_chooser'] ? "\n\t\t\t\t\t\t\t<form action=\"" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("{$this->settings['query_string_formatted']}", 'public', ''), "", "") . "\" method=\"post\" class='left'>\n\t\t\t\t\t\t\t\t<fieldset>\n\t\t\t\t\t\t\t\t\t<input type='hidden' name='k' value='{$this->member->form_hash}' />\n\t\t\t\t\t\t\t\t\t<label for='newSkin' class='hide'>{$this->lang->words['theme_prefix']}</label>\n\t\t\t\t\t\t\t\t\t<select name=\"settingNewSkin\" id='newSkin'>\n\t\t\t\t\t\t\t\t\t\t{$footer_items['skin_chooser']}\n\t\t\t\t\t\t\t\t\t</select>\n\t\t\t\t\t\t\t\t\t<input type='submit' value='{$this->lang->words['jmp_go']}' class='input_submit alt' id='newSkinSubmit' />\n\t\t\t\t\t\t\t\t</fieldset>\n\t\t\t\t\t\t\t</form>\n\t\t\t\t\t\t" : "") . "") . "" : "") . "\n\t\t\t\t<form action=\"" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("{$this->settings['query_string_formatted']}", 'public', ''), "", "") . "\" method=\"post\" class='left'>\n\t\t\t\t\t<fieldset>\n\t\t\t\t\t\t<input type='hidden' name='k' value='{$this->member->form_hash}' />\n\t\t\t\t\t\t<input type='hidden' name='setlanguage' value='1' />\n\t\t\t\t\t\t<input type=\"hidden\" name=\"langurlbits\" value=\"{$this->settings['query_string_safe']}&cal_id={$this->request['cal_id']}\" />\n\t\t\t\t\t\t<label for='newLang' class='hide'>{$this->lang->words['language_prefix']}</label>\n\t\t\t\t\t\t<select name=\"langid\" id='newLang'>\n\t\t\t\t\t\t\t\t{$footer_items['lang_chooser']}\n\t\t\t\t\t\t</select>\n\t\t\t\t\t\t<input type='submit' class='input_submit alt' value='{$this->lang->words['jmp_go']}' id='newLangSubmit' />\n\t\t\t\t\t</fieldset>\n\t\t\t\t</form>\n\t\t\t</div>\n\t\t\t<!-- __FOOTER__ -->\n\t\t\t<!-- /__FOOTER__ -->\n\t\t\t<!--DEBUG_STATS-->\n\t\t\t<div id='board_footer'>\n\t\t\t\t<ul id='utility_links' class='left'>\n\t\t\t\t\t<li><a href='#top' title='{$this->lang->words['go_to_top']}'>{$this->lang->words['back_to_top']}</a></li>\n\t\t\t\t\t<li><a href='" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("", 'public', ''), "", "") . "' title='{$this->lang->words['sj_home']}'>{$this->lang->words['sj_home']}</a></li>\n\t\t\t\t\t<li><a href=\"" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=core&module=global&section=login&do=deleteCookies&k={$this->member->form_hash}", 'public', ''), "", "") . "\" title='{$this->lang->words['delete_all_cookies_title']}'>{$this->lang->words['delete_my_cookies']}</a></li>\n\t\t\t\t\t<li><a href=\"" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=forums&module=forums&section=markasread&marktype=all&k={$this->member->form_hash}", 'public', ''), "", "") . "\" title='{$this->lang->words['mark_all_as_read']}'>{$this->lang->words['mark_board_as_read']}</a></li>\n\t\t\t\t</ul>\n\t\t\t\t{$footer_items['copyright']}\n\t\t\t</div>\n\t\t\t{$stats['task']}\n\t\t</div>\n\t</body>\n</html>"; return $IPBHTML; }
function globalTemplate($html, $documentHeadItems, $css, $jsModules, $metaTags, $header_items = array(), $items = array(), $footer_items = array(), $stats = array()) { $IPBHTML = ""; $this->templateVars['forumActive'] = ""; $this->__default__templateVars['forumActive'] = ""; if (IPS_APP_COMPONENT == 'forums') { $this->templateVars['forumActive'] = "active"; } else { $this->templateVars['forumActive'] = $this->__default__templateVars['forumActive']; } $this->templateVars['membersActive'] = ""; $this->__default__templateVars['membersActive'] = ""; if (IPS_APP_COMPONENT == 'members') { $this->templateVars['membersActive'] = "active"; } else { $this->templateVars['membersActive'] = $this->__default__templateVars['membersActive']; } $this->templateVars['helpActive'] = ""; $this->__default__templateVars['helpActive'] = ""; if (IPS_APP_COMPONENT == 'core' and $this->request['module'] == 'help') { $this->templateVars['helpActive'] = "active"; } else { $this->templateVars['helpActive'] = $this->__default__templateVars['helpActive']; } $this->did_first = 0; $IPBHTML .= "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">\n\t<html xml:lang=\"en\" lang=\"en\" xmlns=\"http://www.w3.org/1999/xhtml\"" . (IPSLib::fbc_enabled() === TRUE ? " xmlns:fb=\"http://www.facebook.com/2008/fbml\"" : "") . ">\n\t<head>\n\t\t<meta http-equiv=\"content-type\" content=\"text/html; charset={$this->settings['gb_char_set']}\" />\n\t\t<title>{$header_items['title']}" . ($header_items['page'] ? " {$this->lang->words['page_title_page']} {$header_items['page']}" : "") . "</title>\n\t\t<link rel=\"shortcut icon\" href='" . ($this->registry->output->isHTTPS ? "{$this->settings['board_url_https']}" : "{$this->settings['board_url']}") . "/favicon.ico' />\n\t\t<script type='text/javascript'>\n\t\t\tjsDebug = " . intval($this->settings['_jsDebug']) . "; /* Must come before JS includes */\n\t\t\tUSE_RTE = " . ($this->memberData['members_editor_choice'] == 'rte' && $this->memberData['_canUseRTE'] === TRUE ? "1" : "0") . ";\n\t\t\tinACP = false;\n\t\t</script>\n\t\t" . $this->registry->getClass('output')->getTemplate('global')->includeCSS($css) . "\n\t\t<!--<meta http-equiv=\"X-UA-Compatible\" content=\"IE=7\" />-->\n\t\t" . $this->registry->getClass('output')->getTemplate('global')->includeMeta($metaTags) . "" . $this->registry->getClass('output')->getTemplate('global')->includeJS($jsModules) . "" . $this->registry->getClass('output')->getTemplate('global')->includeFeeds($documentHeadItems) . "" . $this->registry->getClass('output')->getTemplate('global')->includeRTL() . "\t\t\n\t\t" . $this->registry->getClass('output')->getTemplate('global')->includeVars() . "\n\t\t<script type='text/javascript'>\n\t\t\tLoader.boot();\n\t\t</script>\n\t</head>\n\t<body id='ipboard_body'>\n\t\t<div id='ipbwrapper'>\n\t\t\t<h1>{$this->settings['board_name']}: {$header_items['title']}</h1>\n\t\t\t<p id='content_jump'><a id='top'></a><a href='#j_content' title='{$this->lang->words['jump_to_content']}' accesskey='m'>{$this->lang->words['jump_to_content']}</a></p>\n\t\t\n\t\t\t" . (($this->memberData['g_is_supmod'] == 1 or isset($this->memberData['access_report_center']) and $this->memberData['access_report_center']) ? "<div id='admin_bar'>\n\t\t\t\t\t" . (($this->memberData['g_access_cp'] == 1 and $this->settings['security_remove_acp_link'] == 0) ? "\n\t\t\t\t\t<p class='right'>\n\t\t\t\t\t\t<a href=\"{$this->settings['_admin_link']}\" title='{$this->lang->words['admin_cp']}'>{$this->lang->words['login_to_acp']} ></a>\n\t\t\t\t\t</p>\n\t\t\t\t\t" : "") . "\n\t\t\t\t\t<strong>{$this->lang->words['mod_tools']}</strong> \n\t\t\t\t\t<ul id='mod_tools'>\n\t\t\t\t\t\t" . ($this->memberData['g_is_supmod'] == 1 ? "\n\t\t\t\t\t\t\t<li><a href='" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=core&module=usercp&tab=members&area=mod_ipaddress", 'public', ''), "", "") . "' title='{$this->lang->words['ip_lookup']}'>{$this->lang->words['ip_lookup']}</a></li>\n\t\t\t\t\t\t\t<li><a href='" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=core&module=usercp&tab=forums&area=modAddAnnouncement&do=add", 'public', ''), "", "") . "' title='{$this->lang->words['post_announcement']}'>{$this->lang->words['post_announcement']}</a></li>\n\t\t\t\t\t\t" : "") . "\n\t\t\t\t\t\t" . ($this->memberData['access_report_center'] ? "<li " . ($this->memberData['_cache']['report_num'] > 0 ? "class='active'" : "") . "><a href=\"" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=core&module=reports&do=index", 'public', ''), "", "") . "\" title='{$this->lang->words['view_reports']}'>{$this->memberData['_cache']['report_num']} {$this->lang->words['report_member_bar']}</a></li>" : "") . "\n\t\t\t\t\t</ul>\n\t\t\t\t</div>" : "") . "\n\t\t\t<div id='header'>\n\t\t\t\t<div id='branding'>\n\t\t\t\t\t" . (method_exists($this->registry->output->getTemplate($this->registry->getCurrentApplication() . '_global'), 'overwriteHeader') ? "\n\t\t\t\t\t\t" . $this->registry->getClass('output')->getTemplate('' . $this->registry->getCurrentApplication() . '_global')->overwriteHeader() . "\n\t\t\t\t\t" : "\n\t\t\t\t\t\t" . $this->registry->getClass('output')->getTemplate('global')->defaultHeader() . "\n\t\t\t\t\t") . "\n\t\t\t\t</div>\n\t\t\t\t\t\t\n\t\t\t\t" . ($this->memberData['member_id'] ? "<div id='user_navigation' class='logged_in'>\n\t\t\t\t\t\t<img src='{$this->memberData['pp_thumb_photo']}' alt=\"{$this->memberData['members_display_name']}{$this->lang->words['users_photo']}\" width='{$this->memberData['pp_thumb_width']}' height='{$this->memberData['pp_thumb_height']}' class='photo' />\n\t\t\t\t\t\t<div id='user_info'>\n\t\t\t\t\t\t\t<p>\n\t\t\t\t\t\t\t\t<span class='hide'>{$this->lang->words['logged_in_as']} </span>\nLogged in as\n\t\t\t\t\t\t\t\t<a id='user_link' class='ipbmenu' href=\"" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("showuser={$this->memberData['member_id']}", 'public', ''), "{$this->memberData['members_seo_name']}", "showuser") . "\" title='{$this->lang->words['your_profile']}'>{$this->memberData['members_display_name']} <img src='{$this->settings['img_url']}/opts_arrow.png' alt='>' /></a>" . ($this->memberData['msg_count_new'] != 0 ? "<a href='" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=members&module=messaging", 'public', ''), "", "") . "' id='new_msg_count' title='{$this->memberData['msg_count_new']} {$this->lang->words['msg_new']}'>{$this->memberData['msg_count_new']}<span class='hide'> {$this->lang->words['msg_new']}</span></a>" : "") . "\n\t\t\t\t\t\t\t</p>\n\t\t\t\t\t\t\t<ul id='user_link_menucontent'>\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t<ul id='user_other'>\n\t\t\t\t\t\t\t\t<li><a href=\"" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=core&module=global&section=login&do=logout&k={$this->member->form_hash}", 'public', ''), "", "") . "\">{$this->lang->words['log_out']}</a></li>\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t" . ($this->memberData['member_group_id'] == $this->settings['auth_group'] ? "\n\t\t\t\t\t\t\t\t\t<li><strong><a href=\"" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=core&module=global&section=register&do=reval", 'public', ''), "", "") . "\" title='{$this->lang->words['resend_val']}'>{$this->lang->words['resend_val']}</a></strong></li>\n\t\t\t\t\t\t\t\t" : "") . "\n\t\t\t\t\t\t\t</ul>\n\t\t\t\t\t\t\t<script type='text/javascript'>\n\t\t\t\t\t\t\t\tif( \$('user_link_menucontent') ){\n\t\t\t\t\t\t\t\t\t\$('user_link_menucontent').hide();\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t</script>\n\t\t\t\t\t\t\t" . $this->registry->getClass('output')->addJSModule("friends", "0") . "\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>" : "\n\t\t\t\t\t<div id='user_navigation' class='not_logged_in'>\n\t\t\t\t\t\t<a href='" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=core&module=global&section=login", 'public', ''), "", "") . "' title='{$this->lang->words['sign_in']}'>" . $this->registry->getClass('output')->getReplacement("signin_icon") . " {$this->lang->words['sign_in']}</a>\n\t\t\t\t\t\t<a href=\"" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=core&module=global&section=register", 'public', ''), "", "") . "\" title='{$this->lang->words['register']}'>" . $this->registry->getClass('output')->getReplacement("register_icon") . " {$this->lang->words['register']}</a>\n\t\t\t\t\t\t<a href=\"" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=core&module=help", 'public', ''), "", "") . "\" title='{$this->lang->words['view_help']}' rel=\"help\" accesskey='6'>" . $this->registry->getClass('output')->getReplacement("help_icon") . " {$this->lang->words['sj_help']}</a>\n\t\t\t\t\t</div>\n\t\t\t\t\n\t\t\t\t") . "\n\t\t\t\n\t\t\t\t<div id='primary_nav'>\n\t\t\t\t\t<div id='search'>\n\t\t\t\t\t\t" . (!in_array($this->settings['search_method'], array('traditional', 'sphinx')) ? "\n\t\t\t\t\t\t<form action=\"" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=core&module=search&do=quick_search&search_filter_app[all]=1", 'public', ''), "", "") . "\" method=\"post\" id='search-box' >\n\t\t\t\t\t\t" : "<form action=\"" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=core&module=search&do=quick_search&search_filter_app[" . (!empty($this->request['search_app']) ? "{$this->request['search_app']}" : "" . (IPSSearchIndex::appIsSearchable($this->registry->getCurrentApplication()) ? "{$this->registry->getCurrentApplication()}" : "forums") . "") . "]=1", 'public', ''), "", "") . "\" method=\"post\" id='search-box' >") . "\n\t\t\t\t\t\t\t<fieldset>\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t<label for='main_search' class='hide'>{$this->lang->words['sj_search']}</label>\n\t\t\t\t\t\t\t\t<input type='text' id='main_search' name='search_term' class='text_input' size='17' tabindex='6' />\n\t\t\t\t\t\t\t\t<input type='submit' class='submit_input' value='{$this->lang->words['sj_search']}' />\n\t\t\t\t\t\t\t\t<a href='" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=core&module=search", 'public', ''), "", "") . "' title='{$this->lang->words['advanced_search']}' accesskey='4' rel=\"search\" id='adv_search'>{$this->lang->words['advanced']}</a>\n\t\t\t\t\t\t\t</fieldset>\n\t\t\t\t\t\t</form>\n\t\t\t\t\t</div>\n\t\t\t\t\t<ul>\n\t\t\t\t\t" . ($this->settings['home_url'] ? "\n\t\t\t\t\t\t\t<li id='nav_home' class='left'><a href='{$this->settings['home_url']}' title='{$this->lang->words['homepage_title']}' rel=\"home\">{$this->settings['home_name']}</a></li>\n\t\t\t\t\t\t" : "") . " \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t" . ((is_array($header_items['applications']) and count($header_items['applications'])) ? "\n\t\t\t\t\t\t\t" . $this->__f__f3ef81aefc61e1ddbb3a00ce02d56217($html, $documentHeadItems, $css, $jsModules, $metaTags, $header_items, $items, $footer_items, $stats) . "\t\t\t\t\t\t" : "") . "\n\t\t\t\t\t</ul>\n\t\t\t\t</div>\n\t\t\t\t" . (is_array($items['pmData']) ? "<div id='pm_notification'>\n\t\t\t\t\t\t<div id='pm_wrap'>\n\t\t\t\t\t\t\t<img src='{$items['pmData']['authorData']['pp_thumb_photo']}' alt=\"{$items['pmData']['authorData']['members_display_name']}{$this->lang->words['users_photo']}\" width='{$items['pmData']['authorData']['pp_thumb_width']}' height='{$items['pmData']['authorData']['pp_thumb_height']}' class='photo' />\n\t\t\t\t\t\t\t<h2>{$items['pmData']['authorData']['members_display_name']} " . ($items['pmData']['_type'] == 'new' ? "{$this->lang->words['sent_new_convo']}" : "{$this->lang->words['replied_convo']}") . "</h2>\n\t\t\t\t\t\t\t<p>\n\t\t\t\t\t\t\t\t<strong>{$this->lang->words['pc_subject']}</strong> {$items['pmData']['mt_title']}<br />\n\t\t\t\t\t\t\t\t<strong>{$this->lang->words['pc_replies']}</strong> " . intval($items['pmData']['mt_replies']) . "<br />\n\t\t\t\t\t\t\t\t<strong>{$this->lang->words['pc_sent']}</strong> " . $this->registry->getClass('class_localization')->getDate($items['pmData']['msg_date'], "short", 0) . "\n\t\t\t\t\t\t\t</p>\n\t\t\t\t\t\t\t<p class='excerpt'>\n\t\t\t\t\t\t\t\t" . IPSText::truncate($items['pmData']['msg_post'], 500) . "\n\t\t\t\t\t\t\t</p>\n\t\t\t\t\t\t\t<br />\n\t\t\t\t\t\t\t<ul class='topic_buttons ok_thanks'>\n\t\t\t\t\t\t\t\t<li><a href='#j_content' id='close_pm_notification'><img src='{$this->settings['img_url']}/cross.png' alt='{$this->lang->words['icon']}' /> {$this->lang->words['ignore_conversation']}</a></li>\n\t\t\t\t\t\t\t\t<li><a href='" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=members&module=messaging&section=view&do=findMessage&topicID={$items['pmData']['mt_id']}&msgID=__firstUnread__", 'public', ''), "", "") . "'><img src='{$this->settings['img_url']}/email.png' alt='{$this->lang->words['icon']}' /> {$this->lang->words['global_pm_read']}</a></li>\n\t\t\t\t\t\t\t</ul>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t\t<script type='text/javascript'>\n\t\t\t\t\t\t\$('pm_notification').hide();\n\t\t\t\t\t</script>" : "") . "\n\t\t\t\n\t\t\t<!-- NAVIGATION TOP LEFT\t<div id='secondary_nav'>\n\t\t\t\t\t<ul id='breadcrumb' class='left'>\n\t\t\t\t\t\t\t\t\t\t\t\t" . ((!$this->settings['remove_forums_nav'] or ipsRegistry::$current_application == 'forums') ? "<li class='first'><a href='" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("act=idx", 'public', ''), "false", "") . "'>{$this->settings['board_name']}</a></li>\n\t\t\t\t\t\t\t" . (($this->did_first = 1) ? "" : "") . "" : "") . " \n\t\t\t\t\t\t" . $this->__f__ce9338f8ac36f63d75adce3df1cb47a3($html, $documentHeadItems, $css, $jsModules, $metaTags, $header_items, $items, $footer_items, $stats) . "\t\t\t\t\t</ul>\n\t\t\t\t\t<ul id='section_links' class='right'>\n\t\t\t\t\t\t" . (($this->settings['gl_show'] and $this->settings['gl_title']) ? "<li><a href='" . ($this->settings['gl_link'] ? "{$this->settings['gl_link']}" : "" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=forums&module=extras&section=boardrules", 'public', ''), "", "") . "") . "'>" . ($this->settings['gl_title'] ? "{$this->settings['gl_title']}" : "{$this->lang->words['board_rules']}") . "</a></li>" : "") . "\n\t\t\t\t\t\t<li><a href='" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=core&module=search&do=new_posts&search_filter_app[" . (($this->registry->getCurrentApplication() != 'core' and IPSSearchIndex::appIsSearchable($this->registry->getCurrentApplication())) ? "{$this->registry->getCurrentApplication()}" : "forums") . "]=1", 'public', ''), "", "") . "' accesskey='2'>{$this->lang->words['view_new_posts']}</a></li>\n\t\t\t\t\t\t<li><img src='{$this->settings['img_url']}/feed.png' alt='{$this->lang->words['rss_feed']}' id='rss_feed' class='clickable' /></li> \n\t\t\t\t\t</ul>\n\t\t\t\t</div>\n\t\t\t</div> -->\n\t\t\t<div id='content' class='clear'>\n\t\t\t\t<a id='j_content'></a>\n\t\t\t\t" . ($html ? "{$html}" : "") . "\n\t\t\t\t<br class='clear' />\n\t\t\t</div>\n\t\t\t<div id='footer_utilities' class='clearfix clear rounded'>\n\t\t\t\t<h2 class='hide'>{$this->lang->words['skin_and_lang']}</h2>\n\t\t\t\t" . (($this->settings['allow_skins'] and $footer_items['skin_chooser']) ? "" . (($this->memberData['userAgentLocked'] and !$this->memberData['userAgentBypass']) ? "\n\t\t\t\t\t\t<p id='useragent_msg'>\n\t\t\t\t\t\t\t{$this->lang->words['skin_browser_set']} <a href='" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("{$this->settings['query_string_formatted']}&unlockUserAgent=1", 'public', ''), "", "") . "'>{$this->lang->words['override_browser_theme']}</a>\n\t\t\t\t\t\t</p>\n\t\t\t\t\t" : "\n\t\t\t\t\t\t<form action=\"" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("{$this->settings['query_string_formatted']}", 'public', ''), "", "") . "\" method=\"post\" class='left'>\n\t\t\t\t\t\t\t<fieldset>\n\t\t\t\t\t\t\t\t<input type='hidden' name='k' value='{$this->member->form_hash}' />\n\t\t\t\t\t\t\t\t<label for='newSkin' class='hide'>{$this->lang->words['theme_prefix']}</label>\n\t\t\t\t\t\t\t\t<select name=\"settingNewSkin\" id='newSkin'>\n\t\t\t\t\t\t\t\t\t{$footer_items['skin_chooser']}\n\t\t\t\t\t\t\t\t</select>\n\t\t\t\t\t\t\t\t<input type='submit' value='{$this->lang->words['jmp_go']}' class='input_submit alt' id='newSkinSubmit' />\n\t\t\t\t\t\t\t</fieldset>\n\t\t\t\t\t\t</form>\n\t\t\t\t\t") . "" : "") . "\n\t\t\t\t<form action=\"" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("{$this->settings['query_string_formatted']}", 'public', ''), "", "") . "\" method=\"post\" class='left'>\n\t\t\t\t\t<fieldset>\n\t\t\t\t\t\t<input type='hidden' name='k' value='{$this->member->form_hash}' />\n\t\t\t\t\t\t<input type='hidden' name='setlanguage' value='1' />\n\t\t\t\t\t\t<input type=\"hidden\" name=\"langurlbits\" value=\"{$this->settings['query_string_safe']}&cal_id={$this->request['cal_id']}\" />\n\t\t\t\t\t\t<label for='newLang' class='hide'>{$this->lang->words['language_prefix']}</label>\n\t\t\t\t\t\t<select name=\"langid\" id='newLang'>\n\t\t\t\t\t\t\t\t{$footer_items['lang_chooser']}\n\t\t\t\t\t\t</select>\n\t\t\t\t\t\t<input type='submit' class='input_submit alt' value='{$this->lang->words['jmp_go']}' id='newLangSubmit' />\n\t\t\t\t\t</fieldset>\n\t\t\t\t</form>\n\t\t\t\t<h2 class='hide'>{$this->lang->words['exec_stats']}</h2>\n\t\t\t\t<ul class='right'>\n\t\t\t\t\t<li>{$this->lang->words['time_now']} {$footer_items['time']}\n\t\t\t\t\t\t" . (($this->memberData['member_id'] and $this->memberData['last_visit']) ? "<p>{$this->lang->words['you_last_visit']} " . $this->registry->getClass('class_localization')->getDate($this->memberData['last_visit'], "short", 0) . "</p>" : "") . "\n\t\t\t\t\t</li>\n\t\t\t\t\t" . (($this->memberData['member_id'] and $this->settings['debug_level']) ? "<li><img src='{$this->settings['img_url']}/stats_time.png' alt='{$this->lang->words['icon']}' /> {$stats['ex_time']} {$this->lang->words['stats_sec']}</li>\n\t\t\t\t\t\t<li><img src='{$this->settings['img_url']}/stats_server.png' alt='{$this->lang->words['icon']}' /> {$stats['server_load']}</li>\n\t\t\t\t\t\t<li><img src='{$this->settings['img_url']}/stats_database.png' alt='{$this->lang->words['icon']}' /> {$stats['queries']} " . (IPS_SQL_DEBUG_MODE ? "<a href='" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("{$this->settings['query_string_safe']}&debug=1", 'public', ''), "", "") . "'>" : "") . "{$this->lang->words['stats_queries']}" . (IPS_SQL_DEBUG_MODE ? "</a>" : "") . "</li>\n\t\t\t\t\t\t<li><img src='{$this->settings['img_url']}/stats_compression.png' alt='{$this->lang->words['icon']}' /> {$stats['gzip_status']}</li>" : "") . "\n\t\t\t\t</ul>\n\t\t\t</div>\n\t\t\t<!-- __FOOTER__ -->\n\t\t\t<!-- /__FOOTER__ -->\n\t\t\t<!--DEBUG_STATS-->\n\t\t\t<div id='board_footer'>\n\t\t\t\t<ul id='utility_links' class='left'>\n\t\t\t\t\t<li><a href='#top' title='{$this->lang->words['go_to_top']}'>{$this->lang->words['back_to_top']}</a></li>\n\t\t\t\t\t<li><a href='" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("", 'public', ''), "", "") . "' title='{$this->lang->words['sj_home']}'>Home</a></li>\n\t\t\t\t\t<li><a href=\"" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=core&module=global&section=login&do=deleteCookies&k={$this->member->form_hash}", 'public', ''), "", "") . "\" title='{$this->lang->words['delete_all_cookies_title']}'>{$this->lang->words['delete_my_cookies']}</a></li>\n\t\t\t\t</ul>\n\t\t\t\t{$footer_items['copyright']}\n\t\t\t</div>\n\t\t\t{$stats['task']}\n\t\t\t" . ($this->settings['do_include_lightbox_real'] ? "" . $this->registry->getClass('output')->getTemplate('global')->include_lightbox_real() . "" : "") . "\n\t\t</div>\n\t</body>\n</html>"; return $IPBHTML; }
function globalTemplate($html, $documentHeadItems, $css, $jsModules, $metaTags, array $header_items, $items = array(), $footer_items = array(), $stats = array()) { $IPBHTML = ""; if (IPSLib::locationHasHooks('skin_global', $this->_funcHooks['globalTemplate'])) { $count_7faa034675d780584160b16b4682b835 = is_array($this->functionData['globalTemplate']) ? count($this->functionData['globalTemplate']) : 0; $this->functionData['globalTemplate'][$count_7faa034675d780584160b16b4682b835]['html'] = $html; $this->functionData['globalTemplate'][$count_7faa034675d780584160b16b4682b835]['documentHeadItems'] = $documentHeadItems; $this->functionData['globalTemplate'][$count_7faa034675d780584160b16b4682b835]['css'] = $css; $this->functionData['globalTemplate'][$count_7faa034675d780584160b16b4682b835]['jsModules'] = $jsModules; $this->functionData['globalTemplate'][$count_7faa034675d780584160b16b4682b835]['metaTags'] = $metaTags; $this->functionData['globalTemplate'][$count_7faa034675d780584160b16b4682b835]['header_items'] = $header_items; $this->functionData['globalTemplate'][$count_7faa034675d780584160b16b4682b835]['items'] = $items; $this->functionData['globalTemplate'][$count_7faa034675d780584160b16b4682b835]['footer_items'] = $footer_items; $this->functionData['globalTemplate'][$count_7faa034675d780584160b16b4682b835]['stats'] = $stats; } $IPBHTML .= "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">\r\n\t<html xml:lang=\"en\" lang=\"en\" xmlns=\"http://www.w3.org/1999/xhtml\"" . (IPSLib::fbc_enabled() === TRUE || $this->settings['fbc_appid'] ? " xmlns:fb=\"http://www.facebook.com/2008/fbml\"" : "") . ">\r\n\t<head>\r\n\t\t<meta http-equiv=\"content-type\" content=\"text/html; charset={$this->settings['gb_char_set']}\" />\r\n\t\t<title>{$header_items['title']}" . ($header_items['page'] ? " {$this->lang->words['page_title_page']} {$header_items['page']}" : "") . "</title>\r\n\t\t<!--<meta http-equiv=\"X-UA-Compatible\" content=\"IE=7\" />-->\r\n\t\t<link rel=\"shortcut icon\" href='" . ($this->registry->output->isHTTPS ? "{$this->settings['board_url_https']}" : "{$this->settings['board_url']}") . "/favicon.ico' />\r\n\t\t<meta property=\"og:title\" content=\"{$this->registry->output->encodeMetaTagContent(str_replace(' - ' . $this->settings['board_name'], '', $header_items['title']))}\"/>\r\n\t\t<meta property=\"og:site_name\" content=\"{$this->registry->output->encodeMetaTagContent($this->settings['board_name'])}\"/>\r\n\t\t<meta property=\"og:image\" content=\"{$this->settings['meta_imagesrc']}\"/>\r\n\t\t<meta property=\"og:type\" content=\"article\" />\r\n\t\t" . (method_exists($this->registry->getClass('output')->getTemplate('global'), 'includeMeta') ? $this->registry->getClass('output')->getTemplate('global')->includeMeta($metaTags) : '') . "" . (method_exists($this->registry->getClass('output')->getTemplate('global'), 'includeVars') ? $this->registry->getClass('output')->getTemplate('global')->includeVars() : '') . "" . (method_exists($this->registry->getClass('output')->getTemplate('global'), 'includeJS') ? $this->registry->getClass('output')->getTemplate('global')->includeJS($jsModules) : '') . "" . (method_exists($this->registry->getClass('output')->getTemplate('global'), 'includeCSS') ? $this->registry->getClass('output')->getTemplate('global')->includeCSS($css) : '') . "" . (method_exists($this->registry->getClass('output')->getTemplate('global'), 'includeFeeds') ? $this->registry->getClass('output')->getTemplate('global')->includeFeeds($documentHeadItems) : '') . "" . (method_exists($this->registry->getClass('output')->getTemplate('global'), 'includeRTL') ? $this->registry->getClass('output')->getTemplate('global')->includeRTL() : '') . "\r\n\t\t\r\n\t\t<!--<meta name=\"apple-mobile-web-app-capable\" content=\"yes\">-->\r\n\t\t<meta name=\"apple-mobile-web-app-status-bar-style\" content=\"black-translucent\" />\r\n\t\t<meta name=\"viewport\" content=\"initial-scale=1, maximum-scale=1, user-scalable=no\">\r\n\t</head>\r\n\t<body id='ipboard_body'>\r\n\t\t<div id='ipbwrapper'>\r\n\t\t\t" . (count($items['navigation']) > 1 && !$this->settings['_mobile_nav_home'] ? "" . (($this->nav_count = count($items['navigation'])) ? "" : "") . "" . (($this->nav_back = isset($this->settings['_mobile_back_nav']) ? $this->settings['_mobile_back_nav'] : 2) ? "" : "") . "\r\n\t\t\t\t<div id='secondary_navigation'>\r\n\t\t\t\t\t<a href='" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("{$items['navigation'][$this->nav_count - $this->nav_back][1]}", "{$items['navigation'][$this->nav_count - $this->nav_back][4]}", ''), "{$items['navigation'][$this->nav_count - $this->nav_back][2]}", "{$items['navigation'][$this->nav_count - $this->nav_back][3]}") . "'>{$this->lang->words['_larr']} {$items['navigation'][$this->nav_count - $this->nav_back][0]}</a>\r\n\t\t\t\t</div>" : "" . ((count($items['navigation']) == 1 || $this->settings['_mobile_nav_home']) && !$this->settings['_mobile_hide_nav'] ? "\r\n\t\t\t\t\t<div id='secondary_navigation'>\r\n\t\t\t\t\t\t<a href='" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("act=idx", "public", ''), "false", "") . "' class='back'>{$this->lang->words['_larr']} {$this->lang->words['home']}</a>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t" : "") . "") . "\r\n\t\t\t" . (method_exists($this->registry->output->getTemplate($this->registry->getCurrentApplication() . '_global'), 'overwriteHeader') ? "\r\n\t\t\t\t" . (method_exists($this->registry->getClass('output')->getTemplate('' . $this->registry->getCurrentApplication() . '_global'), 'overwriteHeader') ? $this->registry->getClass('output')->getTemplate('' . $this->registry->getCurrentApplication() . '_global')->overwriteHeader() : '') . "\r\n\t\t\t" : "\r\n\t\t\t\t" . (method_exists($this->registry->getClass('output')->getTemplate('global'), 'defaultHeader') ? $this->registry->getClass('output')->getTemplate('global')->defaultHeader() : '') . "\r\n\t\t\t") . "\r\n\t\t\t<div id=\"options-button\">»</div>\r\n\t\t\t<div id='user_navigation' class='clearfix'>\r\n\t\t\t\t<ul class='clearfix' id='user_bar'>\r\n\t\t\t\t\t" . (!$this->memberData['member_id'] ? "\r\n\t\t\t\t\t\t<a class='button secondary' href='" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=core&module=global&section=login", "public", ''), "", "") . "' title='{$this->lang->words['sign_in']}'>{$this->lang->words['sign_in']}</a> \r\n\t\t\t\t\t\t<a class='button secondary' href=\"" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=core&module=global&section=register", "public", ''), "", "") . "\" title='{$this->lang->words['register']}'>{$this->lang->words['register']}</a>\r\n\t\t\t\t\t" : "\r\n\t\t\t\t\t\t<a class='button secondary' style='width:auto' href=\"" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=core&module=global&section=login&do=logout&k={$this->member->form_hash}", "public", ''), "", "") . "\">{$this->lang->words['log_out']} {$this->memberData['members_display_name']}</a>\r\n\t\t\t\t\t") . "\r\n\t\t\t\t</ul>\r\n\t\t\t\t<ul class='clearfix launcher'>\r\n\t\t\t\t\t" . (($this->memberData['member_id'] and $this->memberData['g_use_pm'] and $this->memberData['members_disable_pm'] == 0) ? "<li id='nav_messages'><a href='" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=members&module=messaging", "public", ''), "", "") . "' title='{$this->lang->words['your_messenger']}'><span class='icon'></span>" . ($this->memberData['msg_count_new'] ? "<span class='ipsHasNotifications'>{$this->memberData['msg_count_new']}</span>" : "") . "{$this->lang->words['your_messenger']}</a></li>" : "") . "\r\n\t\t\t\t\t" . ($this->memberData['member_id'] ? "<li id='nav_notifications'><a href='" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=core&module=usercp&tab=core&area=notificationlog&clear=true", "public", ''), "", "") . "'><span class='icon'></span>" . ($this->memberData['notification_cnt'] ? "<span class='ipsHasNotifications'>{$this->memberData['notification_cnt']}</span>" : "") . "{$this->lang->words['notifications_at_the_top']}</a></li>" : "") . "\r\n\t\t\t\t\t" . ($header_items['applications']['members']['app_show'] ? "\r\n\t\t\t\t\t\t<li id='nav_members'><a href='" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("{$header_items['applications']['members']['app_link']}", "{$header_items['applications']['members']['app_base']}", ''), "{$header_items['applications']['members']['app_seotitle']}", "{$header_items['applications']['members']['app_template']}") . "' title='" . sprintf($this->lang->words['go_to_prefix'], IPSLib::getAppTitle('members')) . "'><span class='icon'></span>" . IPSLib::getAppTitle('members') . "</a></li>\r\n\t\t\t\t\t" : "") . "\r\n\t\t\t\t\t" . ($header_items['applications']['forums']['app_show'] ? "\r\n\t\t\t\t\t\t<li id='nav_forums'><a href='" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("{$header_items['applications']['forums']['app_link']}", "{$header_items['applications']['forums']['app_base']}", ''), "{$header_items['applications']['forums']['app_seotitle']}", "{$header_items['applications']['forums']['app_template']}") . "' title='" . sprintf($this->lang->words['go_to_prefix'], IPSLib::getAppTitle('forums')) . "'><span class='icon'></span>" . IPSLib::getAppTitle('forums') . "</a></li>\r\n\t\t\t\t\t" : "") . "\r\n\t\t\t\t\t" . ($header_items['applications']['blog']['app_show'] ? "\r\n\t\t\t\t\t\t<li id='nav_blog'><a href='" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("{$header_items['applications']['blog']['app_link']}", "{$header_items['applications']['blog']['app_base']}", ''), "{$header_items['applications']['blog']['app_seotitle']}", "{$header_items['applications']['blog']['app_template']}") . "' title='" . sprintf($this->lang->words['go_to_prefix'], IPSLib::getAppTitle('blog')) . "'><span class='icon'></span>" . IPSLib::getAppTitle('blog') . "</a></li>\r\n\t\t\t\t\t" : "") . "\r\n\t\t\t\t\t" . ($header_items['applications']['gallery']['app_show'] ? "\r\n\t\t\t\t\t\t<li id='nav_gallery'><a href='" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("{$header_items['applications']['gallery']['app_link']}", "{$header_items['applications']['gallery']['app_base']}", ''), "{$header_items['applications']['gallery']['app_seotitle']}", "{$header_items['applications']['gallery']['app_template']}") . "' title='" . sprintf($this->lang->words['go_to_prefix'], IPSLib::getAppTitle('gallery')) . "'><span class='icon'></span>" . IPSLib::getAppTitle('gallery') . "</a></li>\r\n\t\t\t\t\t" : "") . "\r\n\t\t\t\t\t" . ($header_items['applications']['nexus']['app_show'] ? "\r\n\t\t\t\t\t\t<li id='nav_nexus_store'><a href='" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=nexus&module=payments&section=store", "public", ''), "store", "") . "'><span class='icon'></span>{$this->lang->words['mobile_nexus_store']}</a></li>\r\n\t\t\t\t\t\t<li id='nav_nexus_ca'><a href='" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=nexus&module=clients", "public", ''), "", "") . "'><span class='icon'></span>{$this->lang->words['mobile_nexus_clients']}</a></li>\r\n\t\t\t\t\t" : "") . "\r\n\t\t\t\t\t<li id='nav_vnc'><a href='" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=core&module=search&do=viewNewContent&search_app=" . (($this->registry->getCurrentApplication() != 'core' and IPSLib::appIsSearchable($this->registry->getCurrentApplication())) ? "{$this->registry->getCurrentApplication()}" : "forums") . "", "public", ''), "", "") . "' accesskey='2'><span class='icon'></span>{$this->lang->words['mobile_view_new_posts']}</a></li>\r\n\t\t\t\t\t<li id='nav_statuses'><a href='" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=members&module=profile&section=status&type=all", "public", ''), "true", "members_status_all") . "'><span class='icon'></span>{$this->lang->words['mob_status_updates']}</a></li>\r\n\t\t\t\t\t<li id='nav_search'><a href='" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=core&module=search", "public", ''), "", "") . "' accesskey='2'><span class='icon'></span>{$this->lang->words['sj_search']}</a></li>\r\n\t\t\t\t\t<li id='nav_markread'><a href=\"" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=forums&module=forums&section=markasread&marktype=all&k={$this->member->form_hash}", "public", ''), "", "") . "\" title='{$this->lang->words['mark_all_as_read']}'><span class='icon'></span>{$this->lang->words['mobile_mark_board_as_read']}</a></li>\r\n\t\t\t\t</ul>\r\n\t\t\t</div>\r\n\t\t\t<script type=\"text/javascript\">\r\n\t\t\t\t/* Prevent flash of header */\r\n\t\t\t\tdocument.getElementById('user_navigation').style.display = 'none';\r\n\t\t\t</script>\r\n\t\t\t\r\n\t\t\t<div id='content' class='clear'>\r\n\t\t\t\t" . ($html ? "{$html}" : "") . "\r\n\t\t\t</div>\r\n\t\t\t<div id='footer' class='clear'>\r\n\t\t\t\t" . ($this->memberData['userAgentType'] != 'mobileAppLegacy' || $this->registry->output->isLargeTouchDevice() ? "\r\n\t\t\t\t\t<a id='full_version' href='#'>{$this->lang->words['full_version']}</a>\r\n\t\t\t\t" : "") . "\r\n\t\t\t\t" . (count($footer_items['lang_chooser']['options']) > 1 ? "\r\n\t\t\t\t\t<a href='#' id='show_langs'>{$footer_items['lang_chooser']['default']}</a>\r\n\t\t\t\t\t<div id='show_langs_box' style='display: none'>\r\n\t\t\t\t\t\t<form action=\"" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("{$this->settings['query_string_formatted']}", "public", ''), "", "") . "\" method=\"post\">\r\n\t\t\t\t\t\t\t<fieldset>\r\n\t\t\t\t\t\t\t\t<input type='hidden' name='k' value='{$this->member->form_hash}' />\r\n\t\t\t\t\t\t\t\t<input type='hidden' name='setlanguage' value='1' />\r\n\t\t\t\t\t\t\t\t<input type=\"hidden\" name=\"langurlbits\" value=\"&cal_id={$this->request['cal_id']}\" />\r\n\t\t\t\t\t\t\t\t<label for='newLang' class='hide'>{$this->lang->words['language_prefix']}</label>\r\n\t\t\t\t\t\t\t\t<select name=\"langid\" id='newLang'>\r\n\t\t\t\t\t\t\t\t\t" . $this->__f__067cf3cbf4d56bffdcc0b9a010502a99($html, $documentHeadItems, $css, $jsModules, $metaTags, $header_items, $items, $footer_items, $stats) . "\t\t\t\t\t\t\t\t</select>\r\n\t\t\t\t\t\t\t\t<input type='submit' class='input_submit alt' value='{$this->lang->words['jmp_go']}' id='newLangSubmit' />\r\n\t\t\t\t\t\t\t</fieldset>\r\n\t\t\t\t\t\t</form>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t" : "") . "\r\n\t\t\t</div>\r\n\t\t\t<div id='task'>{$stats['task']}</div>\r\n\t\t</div>\r\n\t\t<div id='shade' style='display:none'></div>\r\n\t\t<!-- pre-load -->\r\n\t\t<div style='display:none'><img src='{style_images_url}/wait.gif' /></div>\r\n\t\t\r\n\t\t" . (($this->settings['viglink_enabled'] and (!$this->settings['viglink_groups'] or IPSMember::isInGroup($this->memberData, explode(',', $this->settings['viglink_groups'])))) ? "<script type=\"text/javascript\">\r\n\t\t\t var vglnk = { api_url: '//api.viglink.com/api',\r\n\t\t\t key: '{$this->settings['viglink_api_key']}'" . ($this->settings['viglink_subid'] ? ",\r\n\t\t\t sub_id: '{$this->settings['sub_id']}'\r\n\t\t\t " : "") . "\r\n\t\t\t };\r\n\t\t\t\r\n\t\t\t (function(d, t) {\r\n\t\t\t var s = d.createElement(t); s.type = 'text/javascript'; s.async = true;\r\n\t\t\t s.src = ('https:' == document.location.protocol ? vglnk.api_url :\r\n\t\t\t '//cdn.viglink.com/api') + '/vglnk.js';\r\n\t\t\t var r = d.getElementsByTagName(t)[0]; r.parentNode.insertBefore(s, r);\r\n\t\t\t }(document, 'script'));\r\n\t\t\t</script>" : "") . "\r\n\t\t\r\n\t</body>\r\n</html>"; return $IPBHTML; }
/** * Initiate this module * * @access public * @return void */ public function init() { $this->tab_name = ipsRegistry::getClass('class_localization')->words['tab__core']; /* Facebook? */ if (IPSLib::fbc_enabled() === TRUE and $this->memberData['fb_uid']) { require_once IPS_ROOT_PATH . 'sources/classes/facebook/connect.php'; $facebook = new facebook_connect($this->registry); /* Test connection */ $facebook->testConnectSession(); try { $fbuid = $facebook->FB()->get_loggedin_user(); } catch (Exception $e) { } if ($fbuid) { $this->_isFBUser = true; } } }
function globalTemplate($html, $documentHeadItems, $css, $jsModules, $metaTags, array $header_items, $items = array(), $footer_items = array(), $stats = array()) { $IPBHTML = ""; if (IPSLib::locationHasHooks('skin_global', $this->_funcHooks['globalTemplate'])) { $count_6d58bb86eb76915f3220063aef01c91c = is_array($this->functionData['globalTemplate']) ? count($this->functionData['globalTemplate']) : 0; $this->functionData['globalTemplate'][$count_6d58bb86eb76915f3220063aef01c91c]['html'] = $html; $this->functionData['globalTemplate'][$count_6d58bb86eb76915f3220063aef01c91c]['documentHeadItems'] = $documentHeadItems; $this->functionData['globalTemplate'][$count_6d58bb86eb76915f3220063aef01c91c]['css'] = $css; $this->functionData['globalTemplate'][$count_6d58bb86eb76915f3220063aef01c91c]['jsModules'] = $jsModules; $this->functionData['globalTemplate'][$count_6d58bb86eb76915f3220063aef01c91c]['metaTags'] = $metaTags; $this->functionData['globalTemplate'][$count_6d58bb86eb76915f3220063aef01c91c]['header_items'] = $header_items; $this->functionData['globalTemplate'][$count_6d58bb86eb76915f3220063aef01c91c]['items'] = $items; $this->functionData['globalTemplate'][$count_6d58bb86eb76915f3220063aef01c91c]['footer_items'] = $footer_items; $this->functionData['globalTemplate'][$count_6d58bb86eb76915f3220063aef01c91c]['stats'] = $stats; } $this->did_first = 0; $this->did_first_bottom = 0; $IPBHTML .= "<!DOCTYPE html>\n\t<html lang=\"en\" " . (IPSLib::fbc_enabled() === TRUE || $this->settings['fbc_appid'] ? " xmlns:fb=\"http://www.facebook.com/2008/fbml\"" : "") . ">\n\t<head>\n\t\t<meta charset=\"{$this->settings['gb_char_set']}\" />\n\t\t<title>{$header_items['title']}</title>\n\t\t<meta http-equiv=\"X-UA-Compatible\" content=\"IE=edge\" />\n\t\t<link rel=\"shortcut icon\" href='" . ($this->registry->output->isHTTPS ? "{$this->settings['board_url_https']}" : "{$this->settings['board_url']}") . "/favicon.ico' />\n\t\t<link rel=\"image_src\" href='{$this->settings['meta_imagesrc']}' />\n\t\t<script type='text/javascript'>\n\t\t//<![CDATA[\n\t\t\tjsDebug\t\t\t= " . intval($this->settings['_jsDebug']) . "; /* Must come before JS includes */\n\t\t\tDISABLE_AJAX\t= parseInt({$this->settings['disable_text_ajax']}); /* Disables ajax requests where text is sent to the DB; helpful for charset issues */\n\t\t\tinACP\t\t\t= false;\n\t\t\tvar isRTL\t\t= false;\n\t\t\tvar rtlIe\t\t= '';\n\t\t\tvar rtlFull\t\t= '';\n\t\t//]]>\n\t\t</script>\n\t\t" . (method_exists($this->registry->getClass('output')->getTemplate('global'), 'includeCSS') ? $this->registry->getClass('output')->getTemplate('global')->includeCSS($css) : '') . "\n\t\t<meta property=\"og:title\" content=\"{$this->registry->output->encodeMetaTagContent(str_replace(' - ' . $this->settings['board_name'], '', $header_items['title']))}\"/>\n\t\t<meta property=\"og:site_name\" content=\"{$this->registry->output->encodeMetaTagContent($this->settings['board_name'])}\"/>\n\t\t<meta property=\"og:type\" content=\"article\" />\n\t\t" . (method_exists($this->registry->getClass('output')->getTemplate('global'), 'includeMeta') ? $this->registry->getClass('output')->getTemplate('global')->includeMeta($metaTags) : '') . "\n\t\t" . ($this->registry->output->isLargeTouchDevice() ? "\n\t\t<!--<meta name=\"viewport\" content=\"width=device-width;\">-->\n\t\t" : "") . "\n\t\t" . ($this->registry->output->isSmallTouchDevice() ? "\n\t\t<meta name=\"viewport\" content=\"width=1024px\">\n\t\t" : "") . "\n\t\t" . (method_exists($this->registry->getClass('output')->getTemplate('global'), 'includeJS') ? $this->registry->getClass('output')->getTemplate('global')->includeJS($jsModules) : '') . "" . (method_exists($this->registry->getClass('output')->getTemplate('global'), 'includeFeeds') ? $this->registry->getClass('output')->getTemplate('global')->includeFeeds($documentHeadItems) : '') . "" . (method_exists($this->registry->getClass('output')->getTemplate('global'), 'includeRTL') ? $this->registry->getClass('output')->getTemplate('global')->includeRTL() : '') . "\t\t\n\t\t" . (method_exists($this->registry->getClass('output')->getTemplate('global'), 'includeVars') ? $this->registry->getClass('output')->getTemplate('global')->includeVars($header_items) : '') . "\n\t</head>\n\t<body id='ipboard_body'>\n\t\t<p id='content_jump' class='hide'><a id='top'></a><a href='#j_content' title='{$this->lang->words['jump_to_content']}' accesskey='m'>{$this->lang->words['jump_to_content']}</a></p>\n\t\t<div id='ipbwrapper'>\n\t\t\t<!-- ::: TOP BAR: Sign in / register or user drop down and notification alerts ::: -->\n\t\t\t<div id='header_bar' class='clearfix'>\n\t\t\t\t<div class='main_width'>\n\t\t\t\t\t" . (($this->memberData['is_mod'] or !empty($this->memberData['access_report_center']) || ($this->memberData['g_access_cp'] and !$this->settings['security_remove_acp_link'])) ? "<ul id='admin_bar' class='ipsList_inline left'>\n\t\t\t\t\t\t\t" . (($this->memberData['g_access_cp'] and !$this->settings['security_remove_acp_link']) ? "\n\t\t\t\t\t\t\t\t<li>\n\t\t\t\t\t\t\t\t\t<a href=\"{$this->settings['_admin_link']}\" title='{$this->lang->words['admin_cp']}' target=\"_blank\">{$this->lang->words['login_to_acp']}</a>\n\t\t\t\t\t\t\t\t</li>\n\t\t\t\t\t\t\t" : "") . "\n\t\t\t\t\t\t\t<li><a href=\"" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=core&module=modcp", "public", ''), "", "") . "\" title='{$this->lang->words['gbl_modcp_link_title']}'>{$this->lang->words['gbl_modcp_link']}</a></li>\n\t\t\t\t\t\t\t" . ($this->memberData['access_report_center'] && $this->memberData['_cache']['report_num'] > 0 ? "\n\t\t\t\t\t\t\t\t<li class='active'>\n\t\t\t\t\t\t\t\t\t<a href=\"" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=core&module=reports&do=index", "public", ''), "", "") . "\" title='{$this->lang->words['view_reports']}'>{$this->memberData['_cache']['report_num']} {$this->lang->words['report_member_bar']}</a>\n\t\t\t\t\t\t\t\t</li>\n\t\t\t\t\t\t\t" : "") . "\n\t\t\t\t\t\t</ul>" : "") . "\n\t\t\t\t\t" . ($this->memberData['member_id'] ? "<div id='user_navigation' class='logged_in'>\n\t\t\t\t\t\t\t<ul class='ipsList_inline right'>\n\t\t\t\t\t\t\t\t" . (!(!$this->memberData['member_id'] && $this->settings['force_login']) && !($this->settings['board_offline'] && !$this->memberData['g_access_offline']) ? "" . (($this->memberData['g_use_pm'] and $this->memberData['members_disable_pm'] == 0) ? "<li><a data-clicklaunch=\"getInboxList\" id='inbox_link' href='" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=members&module=messaging", "public", ''), "", "") . "' title='{$this->lang->words['your_messenger']}'>" . ($this->memberData['msg_count_new'] ? "<span class='ipsHasNotifications'>{$this->memberData['msg_count_new']}</span>" : "") . " </a></li>" : "") . "\n\t\t\t\t\t\t\t\t\t<li><a data-clicklaunch=\"getNotificationsList\" id='notify_link' href=\"" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=core&module=usercp&area=notificationlog", "public", ''), "", "") . "\" title=\"{$this->lang->words['notifications_at_the_top']}\">" . ($this->memberData['notification_cnt'] ? "<span class='ipsHasNotifications'>{$this->memberData['notification_cnt']}</span>" : "") . " </a></li>" : "") . "\n\t\t\t\t\t\t\t\t<li><a id='user_link' href=\"" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("showuser={$this->memberData['member_id']}", "public", ''), "{$this->memberData['members_seo_name']}", "showuser") . "\" title='{$this->lang->words['your_profile']}'>{$this->memberData['members_display_name']} <span id='user_link_dd'></span></a></li>\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t<li><a href=\"" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=core&module=global&section=login&do=logout&k={$this->member->form_hash}", "public", ''), "", "") . "\" title='{$this->lang->words['log_out']}'>{$this->lang->words['log_out']}</a></li>\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t" . ($this->memberData['member_group_id'] == $this->settings['auth_group'] ? "" . ($this->memberData['ipsconnect_revalidate_url'] ? "\n\t\t\t\t\t\t\t\t\t\t<li> <a href=\"{$this->memberData['ipsconnect_revalidate_url']}\" target='_blank' title='{$this->lang->words['resend_val']}'>{$this->lang->words['resend_val']}</a></li>\n\t\t\t\t\t\t\t\t\t" : "\n\t\t\t\t\t\t\t\t\t\t<li> <a href=\"" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=core&module=global&section=register&do=reval", "public", ''), "", "") . "\" title='{$this->lang->words['resend_val']}'>{$this->lang->words['resend_val']}</a></li>\n\t\t\t\t\t\t\t\t\t") . "" : "") . "\n\t\t\t\t\t\t\t</ul>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t\t<!-- ::: USER DROP DOWN MENU ::: -->\n\t\t\t\t\t\t<div id='user_link_menucontent' class='ipsHeaderMenu clearfix boxShadow' style='display: none'>\n\t\t\t\t\t\t\t<a href=\"" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("showuser={$this->memberData['member_id']}", "public", ''), "{$this->memberData['members_seo_name']}", "showuser") . "\" title='{$this->lang->words['your_profile']}' class='ipsUserPhotoLink left'>\n\t\t\t\t\t\t\t\t<img src='{$this->memberData['pp_small_photo']}' alt=\"" . sprintf($this->lang->words['users_photo'], $this->memberData['members_display_name']) . "\" class='ipsUserPhoto ipsUserPhoto_medium photo' />\n\t\t\t\t\t\t\t</a>\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t<div class='left'>\n\t\t\t\t\t\t\t\t" . ($this->registry->getClass('memberStatus')->canCreate($this->memberData) && !($this->settings['board_offline'] && !$this->memberData['g_access_offline']) ? "<form id='statusForm' action='{$this->settings['base_url']}app=members&module=profile&section=status&do=new&k={$this->member->form_hash}&id={$this->memberData['member_id']}' method='post'>\n\t\t\t\t\t\t\t\t\t\t<input type='text' id='statusUpdateGlobal' name='content' class='input_text' style='width: 97%' /><br />\n\t\t\t\t\t\t\t\t\t\t<input type='submit' id='statusSubmitGlobal' class='ipsButton_secondary' value='{$this->lang->words['global_update_status']}' />\n\t\t\t\t\t\t\t\t\t\t" . (((IPSLib::twitter_enabled() or IPSLib::fbc_enabled()) and ($this->memberData['fb_uid'] or $this->memberData['twitter_id'])) ? " \n\t\t\t\t\t\t\t\t\t\t\t" . ((IPSLib::twitter_enabled() and $this->memberData['twitter_id']) ? "<input type='checkbox' id='su_TwitterGlobal' value='1' name='su_Twitter' /> <label for='su_TwitterGlobal' class='desc ipsType_smaller'>{$this->lang->words['su_cb_twitter']}</label>" : "") . " \n\t\t\t\t\t\t\t\t\t\t\t" . ((IPSLib::fbc_enabled() and $this->memberData['fb_uid']) ? " <input type='checkbox' id='su_FacebookGlobal' value='1' name='su_Facebook' /> <label for='su_FacebookGlobal' class='desc ipsType_smaller'>{$this->lang->words['su_cb_facebook']}</label>" : "") . "" : "") . "\n\t\t\t\t\t\t\t\t\t\t<br />\n\t\t\t\t\t\t\t\t\t\t<hr />\n\t\t\t\t\t\t\t\t\t</form>" : "") . "\n\t\t\t\t\t\t\t\t\t<ul id='links'>\n\t\t\t\t\t\t\t\t\t\t<li id='user_profile'><a href='" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("showuser={$this->memberData['member_id']}", "public", ''), "{$this->memberData['members_seo_name']}", "showuser") . "' title='{$this->lang->words['your_profile']}'>{$this->lang->words['my_profile']}</a></li>\n\t\t\t\t\t\t\t\t\t\t<li id='user_ucp'><a href=\"" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=core&module=usercp", "public", ''), "", "") . "\" title=\"{$this->lang->words['cp_tool_tip']}\">{$this->lang->words['your_cp']}</a></li>\n\t\t\t\t\t\t\t\t\t\t<li id='user_content'><a href=\"" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=core&module=search&do=user_activity&mid={$this->memberData['member_id']}", "public", ''), "", "") . "\" title=\"{$this->lang->words['my_content_link']}\">{$this->lang->words['my_content_link']}</a></li>\n\t\t\t\t\t\t\t\t\t\t" . (count(IPSLib::getEnabledApplications('like')) ? "\n\t\t\t\t\t\t\t\t\t\t\t<li id='user_likes'><a href='" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=core&module=search&do=followed", "public", ''), "", "") . "' title='{$this->lang->words['your_likes']}'>{$this->lang->words['your_likes']}</a></li>\n\t\t\t\t\t\t\t\t\t\t" : "") . "\n\t\t\t\t\t\t\t\t\t\t" . ($this->settings['friends_enabled'] && $this->memberData['g_can_add_friends'] ? "\n\t\t\t\t\t\t\t\t\t\t\t<li id='user_friends'><a href='" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=members&module=profile&section=friends&do=list", "public", ''), "", "") . "' title=\"{$this->lang->words['manage_friends']}\" class='manage_friends'>{$this->lang->words['manage_friends']}</a></li>\n\t\t\t\t\t\t\t\t\t\t" : "") . "\n\t\t\t\t\t\t\t\t\t\t<li id='user_enemies'><a href='" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=core&module=usercp&tab=core&area=ignoredusers", "public", ''), "", "") . "' title=\"{$this->lang->words['manage_ignored_users']}\" class='manage_enemies'>{$this->lang->words['manage_ignored_users']}</a></li>\n\t\t\t\t\t\t\t\t\t\t" . (($this->memberData['has_blog'] and IPSLib::appIsInstalled('blog')) ? "\n\t\t\t\t\t\t\t\t\t\t\t<li id='user_blog'><a href=\"" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=blog&module=manage", "public", ''), "false", "manageblog") . "\">{$this->lang->words['manage_blogs']}</a></li>\n\t\t\t\t\t\t\t\t\t\t" : "") . "\n\t\t\t\t\t\t\t\t\t\t" . ($this->memberData['members_disable_pm'] != 2 && $this->memberData['g_use_pm'] ? "\n\t\t\t\t\t\t\t\t\t\t\t<li id='user_pm'><a href=\"" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=members&module=messaging", "public", ''), "", "") . "\">{$this->lang->words['user_dd_go_pm']}</a></li>\n\t\t\t\t\t\t\t\t\t\t" : "") . "\n\t\t\t\t\t\t\t\t\t\t" . (($this->memberData['has_gallery'] and IPSLib::appIsInstalled('gallery')) ? "\n\t\t\t\t\t\t\t\t\t\t\t<li id='user_gallery'><a href='" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=gallery&user={$this->memberData['member_id']}", "public", ''), "{$this->memberData['members_seo_name']}", "useralbum") . "' title=\"{$this->lang->words['go_to_my_gallery']}\">{$this->lang->words['my_gallery']}</a></li>\n\t\t\t\t\t\t\t\t\t\t" : "") . "\n\t\t\t\t\t\t\t\t\t\t" . (IPSLib::appIsInstalled('nexus') ? "\n\t\t\t\t\t\t\t\t\t\t\t<li id='user_nexus'><a href='" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=nexus&module=clients", "public", ''), "", "") . "' title=\"{$this->lang->words['client_area']}\">{$this->lang->words['client_area']}</a></li>\n\t\t\t\t\t\t\t\t\t\t" : "") . "\n\t\t\t\t\t\t\t\t\t</ul>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</div>" : "<div id='user_navigation' class='not_logged_in'>\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t<ul class='ipsList_inline right'>\n\t\t\t\t\t\t\t\t<li>\n\t\t\t\t\t\t\t\t\t<span class='services'>\n\t\t\t\t\t\t\t\t\t\t" . (IPSLib::loginMethod_enabled('facebook') ? "\n\t\t\t\t\t\t\t\t\t\t\t<a href='" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=core&module=global&section=login&serviceClick=facebook", "public", ''), "", "") . "'>" . $this->registry->getClass('output')->getReplacement("lim_facebook") . "</a>\n\t\t\t\t\t\t\t\t\t\t" : "") . "\n\t\t\t\t\t\t\t\t\t\t" . (IPSLib::loginMethod_enabled('twitter') ? "\n\t\t\t\t\t\t\t\t\t\t\t<a href='" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=core&module=global&section=login&serviceClick=twitter", "public", ''), "", "") . "'>" . $this->registry->getClass('output')->getReplacement("lim_twitter") . "</a>\n\t\t\t\t\t\t\t\t\t\t" : "") . "\n\t\t\t\t\t\t\t\t\t\t" . (IPSLib::loginMethod_enabled('live') ? "\n\t\t\t\t\t\t\t\t\t\t\t<a href='" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=core&module=global&section=login&do=process&use_live=1&auth_key={$this->member->form_hash}", "public", ''), "", "") . "'>" . $this->registry->getClass('output')->getReplacement("lim_windows") . "</a>\n\t\t\t\t\t\t\t\t\t\t" : "") . "\n\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t\t \n\t\t\t\t\t\t\t\t\t<a href='" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=core&module=global&section=login", "public", ''), "", "") . "' title='{$this->lang->words['sign_in']}' id='sign_in'>{$this->lang->words['sign_in']}</a> \n\t\t\t\t\t\t\t\t</li>\n\t\t\t\t\t\t\t\t<li>\n\t\t\t\t\t\t\t\t\t<a href=\"" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=core&module=global&section=register", "public", ''), "", "") . "\" title='{$this->lang->words['register']}' id='register_link'>{$this->lang->words['register']}</a>\n\t\t\t\t\t\t\t\t</li>\n\t\t\t\t\t\t\t</ul>\n\t\t\t\t\t\t</div>") . "\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t\t<!-- ::: BRANDING STRIP: Logo and search box ::: -->\n\t\t\t<div id='branding'>\n\t\t\t\t<div class='main_width'>\n\t\t\t\t\t<div id='logo'>\n\t\t\t\t\t\t" . (ipsRegistry::$applications[$this->registry->getCurrentApplication()]['hasCustomHeader'] ? "\n\t\t\t\t\t\t\t" . (method_exists($this->registry->getClass('output')->getTemplate('' . $this->registry->getCurrentApplication() . '_global'), 'overwriteHeader') ? $this->registry->getClass('output')->getTemplate('' . $this->registry->getCurrentApplication() . '_global')->overwriteHeader() : '') . "\n\t\t\t\t\t\t" : "\n\t\t\t\t\t\t\t" . (method_exists($this->registry->getClass('output')->getTemplate('global'), 'defaultHeader') ? $this->registry->getClass('output')->getTemplate('global')->defaultHeader() : '') . "\n\t\t\t\t\t\t") . "\n\t\t\t\t\t</div>\n\t\t\t\t\t" . ($this->memberData['g_use_search'] && $this->settings['allow_search'] ? "\n\t\t\t\t\t\t" . (method_exists($this->registry->getClass('output')->getTemplate('global'), 'quickSearch') ? $this->registry->getClass('output')->getTemplate('global')->quickSearch() : '') . "\n\t\t\t\t\t" : "") . "\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t\t<!-- ::: APPLICATION TABS ::: -->\n\t\t\t<div id='primary_nav' class='clearfix'>\n\t\t\t\t<div class='main_width'>\n\t\t\t\t\t<ul class='ipsList_inline' id='community_app_menu'>\n\t\t\t\t\t\t" . (!(!$this->memberData['member_id'] && $this->settings['force_login']) && !($this->settings['board_offline'] && !$this->memberData['g_access_offline']) && $this->memberData['g_view_board'] ? "\n\t\t\t\t\t\t\t<li class='right'>\n\t\t\t\t\t\t\t\t<a href=\"" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=core&module=global&section=navigation&inapp=" . IPS_APP_COMPONENT . "", "public", ''), "", "") . "\" rel=\"quickNavigation\" accesskey='9' id='quickNavLaunch' title='{$this->lang->words['launch_quicknav']}'><span> </span></a>\n\t\t\t\t\t\t\t</li>\n\t\t\t\t\t\t" : "") . "\n\t\t\t\t\t\t<li id='nav_explore' class='right'>\n\t\t\t\t\t\t\t<a href='" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=core&module=search&do=viewNewContent&search_app=" . (($this->registry->getCurrentApplication() != 'core' and IPSLib::appIsSearchable($this->registry->getCurrentApplication())) ? "{$this->registry->getCurrentApplication()}" : "forums") . "", "public", ''), "", "") . "' accesskey='2' title='{$this->lang->words['view_new_posts']}'>{$this->lang->words['view_new_posts']}</a>\n\t\t\t\t\t\t</li>\n\t\t\t\t\t\t" . (($this->settings['home_url'] and $this->settings['home_name']) ? "\n\t\t\t\t\t\t\t<li id='nav_home' class='left'><a href='{$this->settings['home_url']}' title='{$this->lang->words['homepage_title']}' rel=\"home\">{$this->settings['home_name']}</a></li>\n\t\t\t\t\t\t" : "") . "\n\t\t\t\t\t\t" . (!empty($header_items['primary_navigation_menu']) ? "\n\t\t\t\t\t\t\t{$header_items['primary_navigation_menu']}\n\t\t\t\t\t\t" : "" . ((is_array($header_items['applications']) and count($header_items['applications'])) ? "\n\t\t\t\t\t\t\t\t" . $this->__f__a62585487074a52c6628d82c3876e110($html, $documentHeadItems, $css, $jsModules, $metaTags, $header_items, $items, $footer_items, $stats) . "\t\t\t\t\t\t\t" : "") . "") . "\n\t\t\t\t\t\t<li id='nav_other_apps' style='display: none'>\n\t\t\t\t\t\t\t<a href='#' class='ipbmenu' id='more_apps'>{$this->lang->words['more_apps']} <img src='{$this->settings['img_url']}/useropts_arrow.png' /></a>\n\t\t\t\t\t\t</li>\n\t\t\t\t\t</ul>\n\t\t\t\t</div>\n\t\t\t</div>\t\n\t\t\t\n\t\t\t<!-- ::: MAIN CONTENT AREA ::: -->\n\t\t\t<div id='content' class='clearfix'>\n\t\t\t\t<!-- ::: NAVIGATION BREADCRUMBS ::: -->\n\t\t\t\t" . (count($items['navigation']) ? "<div id='secondary_navigation' class='clearfix'>\n\t\t\t\t\t\t<ol class='breadcrumb top ipsList_inline left'>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t" . ((!$this->settings['remove_forums_nav'] or ipsRegistry::$current_application == 'forums') ? "<li itemscope itemtype=\"http://data-vocabulary.org/Breadcrumb\">\n\t\t\t\t\t\t\t\t\t<a href='" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("act=idx", "public", ''), "false", "") . "' itemprop=\"url\">\n\t\t\t\t\t\t\t\t\t\t<span itemprop=\"title\">{$this->settings['board_name']}</span>\n\t\t\t\t\t\t\t\t\t</a>\n\t\t\t\t\t\t\t\t</li>\n\t\t\t\t\t\t\t\t" . (($this->did_first = 1) ? "" : "") . "" : "") . "\n\t\t\t\t\t\t\t" . $this->__f__0d4c6f6af396c9b3b3363a4c475d9a7f($html, $documentHeadItems, $css, $jsModules, $metaTags, $header_items, $items, $footer_items, $stats) . "\t\t\t\t\t\t</ol>\n\t\t\t\t\t</div>\n\t\t\t\t\t<br />" : "") . "\n\t\t\t\t<noscript>\n\t\t\t\t\t<div class='message error'>\n\t\t\t\t\t\t<strong>{$this->lang->words['gbl_no_js_title']}</strong>\n\t\t\t\t\t\t<p>{$this->lang->words['gbl_no_js']}</p>\n\t\t\t\t\t</div>\n\t\t\t\t\t<br />\n\t\t\t\t</noscript>\n\t\t\t\t<!-- ::: CONTENT ::: -->\n\t\t\t\t" . ($items['adHeaderCode'] ? "\n\t\t\t\t\t<div class='ipsAd'>{$items['adHeaderCode']}</div>\n\t\t\t\t" : "") . "\n\t\t\t\t" . ($html ? "{$html}" : "") . "\n\t\t\t\t" . ($items['adFooterCode'] ? "\n\t\t\t\t\t<div class='ipsAd'>{$items['adFooterCode']}</div>\n\t\t\t\t" : "") . "\n\t\t\t\t<ol class='breadcrumb bottom ipsList_inline left clearfix clear'>\n\t\t\t\t\t" . (count($items['navigation']) ? "\t\t\t\t\t\t" . ((!$this->settings['remove_forums_nav'] or ipsRegistry::$current_application == 'forums') ? "<li><a href='" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("act=idx", "public", ''), "false", "") . "'>{$this->settings['board_name']}</a></li>\n\t\t\t\t\t\t\t" . (($this->did_first_bottom = 1) ? "" : "") . "" : "") . "\n\t\t\t\t\t\t" . $this->__f__fca2d91bf1367c001172b67788f657a7($html, $documentHeadItems, $css, $jsModules, $metaTags, $header_items, $items, $footer_items, $stats) . "" : "\n\t\t\t\t\t\t<li> </li>\n\t\t\t\t\t") . "\n\t\t\t\t\t" . ($this->settings['priv_title'] ? "\n\t\t\t\t\t<li class='right ipsType_smaller'>\n\t\t\t\t\t\t<a rel=\"nofollow\" href='" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=core&module=global&section=privacy", "public", ''), "false", "privacy") . "'>{$this->settings['priv_title']}</a>\n\t\t\t\t\t</li>\n\t\t\t\t\t" : "") . "\n\t\t\t\t\t" . (($this->settings['gl_show'] and $this->settings['gl_title']) ? "<li class='right ipsType_smaller'>\n\t\t\t\t\t\t\t<a href='" . ($this->settings['gl_link'] ? "{$this->settings['gl_link']}" : "" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=forums&module=extras&section=boardrules", "public", ''), "", "") . "") . "' title='" . ($this->settings['gl_title'] ? "{$this->settings['gl_title']}" : "{$this->lang->words['board_rules']}") . "'>" . ($this->settings['gl_title'] ? "{$this->settings['gl_title']}" : "{$this->lang->words['board_rules']}") . "</a>" . ($this->settings['priv_title'] ? " · " : "") . "\n\t\t\t\t\t\t</li>" : "") . "\t\n\t\t\t\t</ol>\n\t\t\t</div>\n\t\t\t<!-- ::: FOOTER (Change skin, language, mark as read, etc) ::: -->\n\t\t\t<div id='footer_utilities' class='main_width clearfix clear'>\n\t\t\t\t<a rel=\"nofollow\" href='#top' id='backtotop' title='{$this->lang->words['go_to_top']}'><img src='{$this->settings['img_url']}/top.png' alt='' /></a>\n\t\t\t\t<ul class='ipsList_inline left'>\n\t\t\t\t\t<li>\n\t\t\t\t\t\t<img src='{$this->settings['img_url']}/feed.png' alt='{$this->lang->words['rss_feed']}' id='rss_feed' class='clickable' />\n\t\t\t\t\t</li>\n\t\t\t\t\t" . (!$this->member->is_not_human ? "" . (($this->memberData['userAgentLocked'] and !$this->memberData['userAgentBypass']) ? "\n\t\t\t\t\t\t\t<li id='useragent_msg'>\n\t\t\t\t\t\t\t\t{$this->lang->words['skin_browser_set']} <a href='#' data-clicklaunch='changeSkin' data-skinid='unlockUserAgent'>{$this->lang->words['override_browser_theme']}</a>\n\t\t\t\t\t\t\t</li>\n\t\t\t\t\t\t" : "" . ($this->registry->output->isTouchDevice() ? "\n\t\t\t\t\t\t\t<li>\n\t\t\t\t\t\t\t\t<a href='#' data-clicklaunch='changeSkin' data-skinid='setAsMobile'>{$this->lang->words['set_mobile_theme']}</a>\n\t\t\t\t\t\t\t</li>\n\t\t\t\t\t\t" : "") . "\n\t\t\t\t\t\t\t" . (count($footer_items['skin_chooser']) > 1 ? "\n\t\t\t\t\t\t\t\t<li>\n\t\t\t\t\t\t\t\t\t<a rel=\"nofollow\" id='new_skin' href='#' title='{$this->lang->words['change_theme']}'>{$this->lang->words['change_theme']}</a>\t\t\t\n\t\t\t\t\t\t\t\t\t<ul id='new_skin_menucontent' class='ipbmenu_content with_checks' style='display: none'>\n\t\t\t\t\t\t\t\t\t\t" . $this->__f__1156e151a7185db1131bc7d8e3f6b51b($html, $documentHeadItems, $css, $jsModules, $metaTags, $header_items, $items, $footer_items, $stats) . "\t\t\t\t\t\t\t\t\t</ul>\n\t\t\t\t\t\t\t\t</li>\n\t\t\t\t\t\t\t" : "") . "") . "" : "") . "\n\t\t\t\t\t" . (!$this->member->is_not_human && count($footer_items['lang_chooser']['options']) > 1 ? "\n\t\t\t\t\t\t<li>\n\t\t\t\t\t\t\t<a rel=\"nofollow\" href='#' id='new_language'>{$footer_items['lang_chooser']['default']}</a>\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t<ul id='new_language_menucontent' class='ipbmenu_content with_checks' style='display: none'>\n\t\t\t\t\t\t\t\t" . $this->__f__e05dd4b97e748ba89c1cd676e08a9337($html, $documentHeadItems, $css, $jsModules, $metaTags, $header_items, $items, $footer_items, $stats) . "\t\t\t\t\t\t\t</ul>\n\t\t\t\t\t\t</li>\n\t\t\t\t\t" : "") . "\n\t\t\t\t\t" . (!$this->member->is_not_human && ($this->memberData['member_id'] || $this->settings['topic_marking_guests']) ? "\n\t\t\t\t\t\t<li>\n\t\t\t\t\t\t\t<a rel=\"nofollow\" id='mark_all_read' href=\"" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=forums&module=forums&section=markasread&marktype=all&k={$this->member->form_hash}", "public", ''), "", "") . "\" title='{$this->lang->words['mark_all_as_read']}'>{$this->lang->words['mark_board_as_read']}</a>\n\t\t\t\t\t\t\t<ul id='mark_all_read_menucontent' class='ipbmenu_content' style='display: none'>\n\t\t\t\t\t\t\t\t" . $this->__f__7f370447b0b396d1c2920623a517e34c($html, $documentHeadItems, $css, $jsModules, $metaTags, $header_items, $items, $footer_items, $stats) . "\t\t\t\t\t\t\t\t<li>\n\t\t\t\t\t\t\t\t\t<a href=\"" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=forums&module=forums&section=markasread&marktype=all&k={$this->member->form_hash}", "public", ''), "", "") . "\"><strong>{$this->lang->words['mark_all_as_read']}</strong></a>\n\t\t\t\t\t\t\t\t</li>\n\t\t\t\t\t\t\t</ul>\n\t\t\t\t\t\t</li>\n\t\t\t\t\t" : "") . "\n\t\t\t\t\t<li>\n\t\t\t\t\t\t<a href=\"" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=core&module=help", "public", ''), "", "") . "\" title='{$this->lang->words['view_help']}' rel=\"help\" accesskey='6'>{$this->lang->words['sj_help']}</a>\n\t\t\t\t\t</li>\t\t\t\t\n\t\t\t\t</ul>\n\t\t\t\t{$footer_items['copyright']}\n\t\t\t</div>\n\t\t\t" . (($this->memberData['member_id'] and $this->settings['debug_level']) ? "<div id='ipsDebug_footer'>\n\t\t\t\t\t<strong>{$this->lang->words['time_now']}</strong> {$footer_items['time']}\n\t\t\t\t\t" . (($this->memberData['member_id'] and $this->memberData['last_visit']) ? "<strong>{$this->lang->words['you_last_visit']}</strong> " . IPSText::htmlspecialchars($this->registry->getClass('class_localization')->getDate($this->memberData['last_visit'], "short", 0)) . "" : "") . "\n\t\t\t\t\t<strong>{$this->lang->words['stat_exec']}</strong> {$stats['ex_time']} " . (is_float($stats['ex_time']) ? "{$this->lang->words['stats_sec']}" : "") . "\n\t\t\t\t\t<strong>{$this->lang->words['stat_load']}</strong> {$stats['server_load']}\n\t\t\t\t\t<strong>{$this->lang->words['stat_queries']}</strong> {$stats['queries']} " . (IPS_SQL_DEBUG_MODE ? "<a href='" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("{$this->settings['query_string_safe']}&debug=1", "public", ''), "", "") . "'>" : "") . "{$this->lang->words['stats_queries']}" . (IPS_SQL_DEBUG_MODE ? "</a>" : "") . "\n\t\t\t\t\t<strong>{$this->lang->words['stat_gzip']}</strong> {$stats['gzip_status']}\n\t\t\t\t</div>" : "") . "\n\t\t\t{$stats['task']}\n\t\t\t" . ($this->settings['do_include_lightbox_real'] ? "\n\t\t\t\t" . (method_exists($this->registry->getClass('output')->getTemplate('global'), 'include_lightbox_real') ? $this->registry->getClass('output')->getTemplate('global')->include_lightbox_real() : '') . "\n\t\t\t" : "\n\t\t\t\t<script type=\"text/javascript\">\n\t\t\t\t\tipb.global.lightBoxIsOff();\n\t\t\t\t</script>\n\t\t\t") . "\n\t\t\t" . (!$this->memberData['member_id'] ? "" . (method_exists($this->registry->getClass('output')->getTemplate('global'), 'inlineLogin') ? $this->registry->getClass('output')->getTemplate('global')->inlineLogin() : '') . "" : "") . "\n\t\t</div>\n\t\t\n\t\t<!--DEBUG_STATS-->\n\t\t<script type='text/javascript'>\n\t\t\tif( \$('primary_nav') ){\tipb.global.activateMainMenu(); }\n\t\t</script>\n\t\t" . (($this->settings['viglink_enabled'] and (!$this->settings['viglink_groups'] or IPSMember::isInGroup($this->memberData, explode(',', $this->settings['viglink_groups'])))) ? "<script type=\"text/javascript\">\n\t\t\t var vglnk = { api_url: '//api.viglink.com/api',\n\t\t\t key: '{$this->settings['viglink_api_key']}'" . ($this->settings['viglink_subid'] ? ",\n\t\t\t sub_id: '{$this->settings['sub_id']}'\n\t\t\t " : "") . "\n\t\t\t };\n\t\t\t\n\t\t\t (function(d, t) {\n\t\t\t var s = d.createElement(t); s.type = 'text/javascript'; s.async = true;\n\t\t\t s.src = ('https:' == document.location.protocol ? vglnk.api_url :\n\t\t\t '//cdn.viglink.com/api') + '/vglnk.js';\n\t\t\t var r = d.getElementsByTagName(t)[0]; r.parentNode.insertBefore(s, r);\n\t\t\t }(document, 'script'));\n\t\t\t</script>" : "") . "\t</body>\n</html>"; return $IPBHTML; }
function globalTemplate($html, $documentHeadItems, $css, $jsModules, $metaTags, array $header_items, $items = array(), $footer_items = array(), $stats = array()) { $IPBHTML = ""; if (IPSLib::locationHasHooks('skin_global', $this->_funcHooks['globalTemplate'])) { $count_ec5bd3b8452490896a7de4155d855cd6 = is_array($this->functionData['globalTemplate']) ? count($this->functionData['globalTemplate']) : 0; $this->functionData['globalTemplate'][$count_ec5bd3b8452490896a7de4155d855cd6]['html'] = $html; $this->functionData['globalTemplate'][$count_ec5bd3b8452490896a7de4155d855cd6]['documentHeadItems'] = $documentHeadItems; $this->functionData['globalTemplate'][$count_ec5bd3b8452490896a7de4155d855cd6]['css'] = $css; $this->functionData['globalTemplate'][$count_ec5bd3b8452490896a7de4155d855cd6]['jsModules'] = $jsModules; $this->functionData['globalTemplate'][$count_ec5bd3b8452490896a7de4155d855cd6]['metaTags'] = $metaTags; $this->functionData['globalTemplate'][$count_ec5bd3b8452490896a7de4155d855cd6]['header_items'] = $header_items; $this->functionData['globalTemplate'][$count_ec5bd3b8452490896a7de4155d855cd6]['items'] = $items; $this->functionData['globalTemplate'][$count_ec5bd3b8452490896a7de4155d855cd6]['footer_items'] = $footer_items; $this->functionData['globalTemplate'][$count_ec5bd3b8452490896a7de4155d855cd6]['stats'] = $stats; } $this->did_first = 0; $this->did_first_bottom = 0; $IPBHTML .= "<!DOCTYPE html>\n <html lang=\"en\" " . (IPSLib::fbc_enabled() === TRUE || $this->settings['fbc_appid'] ? " xmlns:fb=\"https://vk.com/dfbest\"" : "") . ">\n <head>\n <meta charset=\"{$this->settings['gb_char_set']}\" />\n <title>{$header_items['title']}</title>\n <meta httpA-equiv=\"X-UA-Compatible\" content=\"IE=edge\" />\n <link rel=\"shortcut icon\" href='" . ($this->registry->output->isHTTPS ? "{$this->settings['board_url_https']}" : "{$this->settings['board_url']}") . "/favicon.ico' />\n <link rel=\"image_src\" href='{$this->settings['meta_imagesrc']}' />\n <script type='text/javascript'>\n //<![CDATA[\n jsDebug = " . intval($this->settings['_jsDebug']) . "; /* Must come before JS includes */\n DISABLE_AJAX = parseInt({$this->settings['disable_text_ajax']}); /* Disables ajax requests where text is sent to the DB; helpful for charset issues */\n inACP = false;\n var isRTL = false;\n var rtlIe = '';\n var rtlFull = '';\n //]]>\n </script>\n <link href='//fonts.googleapis.com/css?family=Lato:400,700,300' rel='stylesheet' type='text/css' />\n " . (method_exists($this->registry->getClass('output')->getTemplate('global'), 'includeCSS') ? $this->registry->getClass('output')->getTemplate('global')->includeCSS($css) : '') . "\n <!--[if lte IE 8]><style type='text/css'>.horizontalView .author_info{ border: 1px solid #e8e8e8; {</style><![endif]-->\n <meta property=\"og:title\" content=\"{$this->registry->output->encodeMetaTagContent(str_replace(' - ' . $this->settings['board_name'], '', $header_items['title']))}\"/>\n <meta property=\"og:site_name\" content=\"{$this->registry->output->encodeMetaTagContent($this->settings['board_name'])}\"/>\n <meta property=\"og:type\" content=\"article\" />\n " . (method_exists($this->registry->getClass('output')->getTemplate('global'), 'includeMeta') ? $this->registry->getClass('output')->getTemplate('global')->includeMeta($metaTags) : '') . "\n " . ($this->registry->output->isLargeTouchDevice() ? "\n <!-- <meta name=\"viewport\" content=\"width=device-width;\"> -->\n " : "") . "\n " . ($this->registry->output->isSmallTouchDevice() ? "\n <meta name=\"viewport\" content=\"width=1024px\">\n " : "") . "\n " . (method_exists($this->registry->getClass('output')->getTemplate('global'), '_fmwConfig') ? $this->registry->getClass('output')->getTemplate('global')->_fmwConfig() : '') . "\n <script type='text/javascript'>!window.jQuery && document.write('<script src=\"//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js\"><\\/script>')</script>\n <script type='text/javascript'>!window.jQuery && document.write('<script src=\"{style_images_url}/js/jquery.min.js\"><\\/script>')</script>\n <script type='text/javascript' src=\"{style_images_url}/js/cookie.js\"></script>\n <script type='text/javascript' src=\"{style_images_url}/js/ipbforumskins.js\"></script>\n " . (method_exists($this->registry->getClass('output')->getTemplate('global'), 'includeJS') ? $this->registry->getClass('output')->getTemplate('global')->includeJS($jsModules) : '') . "" . (method_exists($this->registry->getClass('output')->getTemplate('global'), 'includeFeeds') ? $this->registry->getClass('output')->getTemplate('global')->includeFeeds($documentHeadItems) : '') . "" . (method_exists($this->registry->getClass('output')->getTemplate('global'), 'includeRTL') ? $this->registry->getClass('output')->getTemplate('global')->includeRTL() : '') . " \n " . (method_exists($this->registry->getClass('output')->getTemplate('global'), 'includeVars') ? $this->registry->getClass('output')->getTemplate('global')->includeVars($header_items) : '') . "" . ($this->settings['themeEditor'] == 'yes' ? "<style id=\"stylePrimary\" type=\"text/css\"></style>" : "") . "\n <script type='text/javascript'>\n jQuery(document).scroll(function () {\n var y = jQuery(this).scrollTop();\n if (y > 120) {\n jQuery('#backtotop').fadeIn(200);\n } else {\n jQuery('#backtotop').fadeOut(200);\n }\n });\n </script>\n<script type='text/javascript'>\n jQuery(document).scroll(function () {\n var h = jQuery(this).scrollTop();\n if (h > 160) {\n jQuery('#wa_nav_wrap').css({'position':'fixed','top':'0px', 'background': 'rgba(255, 255, 255, 0.9)'});\n } else {\n jQuery('#wa_nav_wrap').css({'position':'relative','background': '#fff'});\n }\n });\n </script>\n </head>\n <body id='ipboard_body' class='" . ($this->settings['fixedHeader'] == 'yes' ? "fixedHeader" : "") . " " . ($this->settings['roundedAvatars'] == 'yes' ? "roundedAvatars" : "") . " " . ($this->settings['themeEditor'] == 'yes' ? "cpe" : "") . "'>\n" . (method_exists($this->registry->getClass('output')->getTemplate('global_other'), 'settings') ? $this->registry->getClass('output')->getTemplate('global_other')->settings() : '') . "\n" . ($this->settings['themeEditor'] == 'yes' ? "\n <div class='fmw_menu'>\n <div id='themeEditor' class='clearfix'>\n <div class='fmw-text'>Изменить стиль</div>\n <span style='background: #D91E18;' data-primary=\"D91E18\">Красный</span>\n <span style='background: #F5AB35;' data-primary=\"F5AB35\">Жёлтый</span>\n <span style='background: #F9690E;' data-primary=\"F9690E\">Оранжевый</span>\n <span style='background: #2ECC71;' data-primary=\"2ECC71\">Зелёный</span>\n <span style='background: #019875;' data-primary=\"019875\">Лазоревый</span>\n <span style='background: #59ABE3;' data-primary=\"59ABE3\">Голубой</span>\n <span style='background: #2574A9;' data-primary=\"2574A9\">Синий</span>\n <span style='background: #55728b;' data-primary=\"55728b\">По умолчанию</span>\n </div>\n <div class='fmw_button'><i class='fa fa-pencil'></i></div>\n </div>\n" : "") . "\n <p id='content_jump' class='hide'><a id='top'></a><a href='#j_content' title='{$this->lang->words['jump_to_content']}' accesskey='m'>{$this->lang->words['jump_to_content']}</a></p>\n <!-- ::: BRANDING STRIP: Logo and search box ::: -->\n <div id='branding'><div class='wrapper clearfix'>\n \n <a href=\"http://o-rp.ru/forum/\"><div id='logo'></div></a>\n \n " . ($this->memberData['member_id'] ? "\n <div id='user_navigation' class='logged_in'>\n <ul class='ipsList_inline'>\n <li><a href=\"" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("showuser={$this->memberData['member_id']}", "public", ''), "{$this->memberData['members_seo_name']}", "showuser") . "\" title='{$this->lang->words['your_profile']}'>\n <img src='{$this->memberData['pp_small_photo']}' alt=\"" . sprintf($this->lang->words['users_photo'], $this->memberData['members_display_name']) . "\" class='user_photo' />\n </a></li>\n <li><a id='user_link' href=\"" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("showuser={$this->memberData['member_id']}", "public", ''), "{$this->memberData['members_seo_name']}", "showuser") . "\" title='{$this->lang->words['your_profile']}'>{$this->memberData['members_display_name']} <i class=\"fa fa-caret-down\"></i></a></li>\n <li><a href=\"" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=core&module=global&section=login&do=logout&k={$this->member->form_hash}", "public", ''), "", "") . "\" data-confirmaction=\"Вы уверены, что хотите выйти?\"><i class=\"fa fa-sign-out\"></i> {$this->lang->words['log_out']}</a></li> \n </ul>\n </div>\n " : "\n <div id='user_navigation' class='not_logged_in'>\n \n <ul class='ipsList_inline'>\n <li>\n <a href='" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=core&module=global&section=login", "public", ''), "", "") . "' title='{$this->lang->words['sign_in']}' id='sign_in'><img src=\"{style_images_url}/user_login.png\" alt=\"\" /> {$this->lang->words['sign_in']}</a>\n </li>\n <li>\n <a href=\"" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=core&module=global&section=register", "public", ''), "", "") . "\" title='{$this->lang->words['register']}' id='register_link'><img src=\"{style_images_url}/user_register.png\" alt=\"\" /> {$this->lang->words['register']}</a>\n </li>\n </ul>\n </div>\n ") . "\n \n </div></div>\n \n <div id='ipbwrapper'>\n\n<div id=\"wa_nav_wrap\">\n<div id='nav_wrap' class='clearfix'>\n \n <!-- ::: APPLICATION TABS ::: -->\n <div id='primary_nav' class='clearfix'>\n <ul class='ipsList_inline' id='community_app_menu'>\n " . (!empty($header_items['primary_navigation_menu']) ? "\n {$header_items['primary_navigation_menu']}\n " : "" . ((is_array($header_items['applications']) and count($header_items['applications'])) ? "\n " . $this->__f__9fff437b970a0d7f61924695b3e85e4b($html, $documentHeadItems, $css, $jsModules, $metaTags, $header_items, $items, $footer_items, $stats) . " " : "") . "") . "\n " . ($this->settings['navDropdown'] == 'yes' ? "\n <li class='left'><a href=\"https://vk.com/orpru\" target=\"_blank\" class='ipbmenu' id='primary_extra'><i class=\"fa fa-chain-broken\"></i> ВКонтакте </a></li>\n\t\t\t\t\t<li class='left'><a href=\"https://o-rp.ru/\" target=\"_blank\" class='ipbmenu' id='primary_extra'><i class=\"fa fa-chain-broken\"></i> Сайт </a></li>\n\t\t\t\t\t<li class='left'><a href=\"https://o-rp.ru/buy\" target=\"_blank\" class='ipbmenu' id='primary_extra'><i class=\"fa fa-chain-broken\"></i> Магазин </a></li>\n " : "") . "" . ($Фthis->settings['defaultMoreDropdown'] == 'yes' ? "\n <li id='nav_other_apps' style='display: none'>\n <a href='#' class='ipbmenu' id='more_apps'>{$this->lang->words['more_apps']} <i class=\"fa fa-caret-down\"></i></a>\n </li>\n " : "") . "\n </ul>\n </div>\n \n " . ($this->memberData['g_use_search'] && $this->settings['allow_search'] ? "" . (method_exists($this->registry->getClass('output')->getTemplate('global'), 'quickSearch') ? $this->registry->getClass('output')->getTemplate('global')->quickSearch() : '') . "" : "") . "\n \n </div>\n</div>\n\n<div class='wrapper'>\n\n " . ($this->memberData['member_id'] ? "<!-- ::: USER DROP DOWN MENU ::: -->\n\t<div id='user_link_menucontent' class='ipsHeaderMenu boxShadow clearfix' style='display: none'> \n <div class='left'>\n " . ($this->registry->getClass('memberStatus')->canCreate($this->memberData) && !($this->settings['board_offline'] && !$this->memberData['g_access_offline']) ? "\n <form id='statusForm' action='{$this->settings['base_url']}app=members&module=profile&section=status&do=new&k={$this->member->form_hash}&id={$this->memberData['member_id']}' method='post'>\n <input type='text' id='statusUpdateGlobal' name='content' class='input_text' style='width: 60%;margin-right: 0 !important;' />\n <input type='submit' id='statusSubmitGlobal' class='fmw-square_but ipsButton_secondary' value='{$this->lang->words['global_update_status']}' />\n <br />\n <hr />\n </form>\n " : "") . "\n<div class='left left_col'>\n <ul id='links' style='margin-right:40px;'>\n <li id='user_profile'><a href='" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("showuser={$this->memberData['member_id']}", "public", ''), "{$this->memberData['members_seo_name']}", "showuser") . "' title='{$this->lang->words['your_profile']}'>{$this->lang->words['my_profile']}</a></li>\n <li id='user_content'><a href=\"" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=core&module=search&do=user_activity&mid={$this->memberData['member_id']}", "public", ''), "", "") . "\" title=\"{$this->lang->words['my_content_link']}\">{$this->lang->words['my_content_link']}</a></li>\n " . ($this->settings['friends_enabled'] && $this->memberData['g_can_add_friends'] ? "\n <li id='user_friends'><a href='" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=members&module=profile&section=friends&do=list", "public", ''), "", "") . "' title=\"{$this->lang->words['manage_friends']}\" class='manage_friends'>{$this->lang->words['manage_friends']}</a></li>\n " : "") . "\n " . ($this->memberData['members_disable_pm'] != 2 && $this->memberData['g_use_pm'] ? "\n <li id='user_pm'><a href=\"" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=members&module=messaging", "public", ''), "", "") . "\">{$this->lang->words['user_dd_go_pm']}</a></li>\n " : "") . "\n " . (IPSLib::appIsInstalled('nexus') ? "\n <li id='user_nexus'><a href='" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=nexus&module=clients", "public", ''), "", "") . "' title=\"{$this->lang->words['client_area']}\">{$this->lang->words['client_area']}</a></li>\n " : "") . "\n </ul>\n</div>\n<div class='left' style='margin-left:10px;'>\n<ul id='links'>\n<li id='user_ucp'><a href=\"" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=core&module=usercp", "public", ''), "", "") . "\" title=\"{$this->lang->words['cp_tool_tip']}\">{$this->lang->words['your_cp']}</a></li>\n" . (count(IPSLib::getEnabledApplications('like')) ? "\n <li id='user_likes'><a href='" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=core&module=search&do=followed", "public", ''), "", "") . "' title='{$this->lang->words['your_likes']}'>{$this->lang->words['your_likes']}</a></li>\n " : "") . "\n<li id='user_enemies'><a href='" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=core&module=usercp&tab=core&area=ignoredusers", "public", ''), "", "") . "' title=\"{$this->lang->words['manage_ignored_users']}\" class='manage_enemies'>{$this->lang->words['manage_ignored_users']}</a></li>\n" . (($this->memberData['has_blog'] and IPSLib::appIsInstalled('blog')) ? "\n <li id='user_blog'><a href=\"" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=blog&module=manage", "public", ''), "false", "manageblog") . "\">{$this->lang->words['manage_blogs']}</a></li>\n " : "") . "\n" . (($this->memberData['has_gallery'] and IPSLib::appIsInstalled('gallery')) ? "\n <li id='user_gallery'><a href='" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=gallery&user={$this->memberData['member_id']}", "public", ''), "{$this->memberData['members_seo_name']}", "useralbum") . "' title=\"{$this->lang->words['go_to_my_gallery']}\">{$this->lang->words['my_gallery']}</a></li>\n " : "") . "\n</ul>\n</div>\n </div>\n </div>" : "") . "\n \n <!-- ::: MAIN CONTENT AREA ::: -->\n <div id='content' class='clearfix'>\n<!-- ::: User Notifications, Messenger and Contents ::: --> \t \t\n\t\t\t" . ($this->memberData['member_id'] ? "" . (!(!$this->memberData['member_id'] && $this->settings['force_login']) && !($this->settings['board_offline'] && !$this->memberData['g_access_offline']) ? "<div class=\"row\">\n<div class=\"col-lg-4\">\n\t<section class=\"panel\">\n\t<div class=\"infIco infNot\">\n\t\t<i class=\"fa fa-bell-o\"></i>\n\t</div>\n\t<div class=\"infValue\">\n\t\t<h1 class=\"count\">\n\t\t\tОповещения\n\t\t</h1>\t\n\t\t<p>\n\t\t<p><a data-clicklaunch=\"getNotificationsList\" href=\"" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=core&module=usercp&area=notificationlog", "public", ''), "", "") . "\" title=\"{$this->lang->words['notifications_at_the_top']}\"><i class=\"fa fa-bell-o fa lg\"></i> Оповещений</a> <span class='ipbHasNotifications'>(<strong>{$this->memberData['notification_cnt']}</strong>)</span></p></p>\n\t</div>\n\t</section>\n</div>\n<div class=\"col-lg-4\">\n\t<section class=\"panel\">\n\t<div class=\"infIco infMes\">\n\t\t<i class=\"fa fa-envelope-o\"></i>\n\t</div>\n\t<div class=\"infValue\">\n\t\t<h1 class=\"count\">\n\t\t\tЛичные сообщения\n\t\t</h1>\t\n\t\t" . (($this->memberData['g_use_pm'] and $this->memberData['members_disable_pm'] == 0) ? "\n\t\t<p>\n\t\t<a data-clicklaunch=\"getInboxList\" id='user_notifications_link' href='" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=members&module=messaging", "public", ''), "", "") . "' title='{$this->lang->words['your_messenger']}'><i class=\"fa fa-envelope-o fa lg\"></i> {$this->lang->words['your_messenger']}</a> <span>(<strong>{$this->memberData['msg_count_new']}</strong>)</span>\n\t\t</p>\n\t\t" : "") . "\n\t</div>\n\t</section>\n</div>\n<div class=\"col-lg-4 \">\n\t<section class=\"panel\">\n\t<div class=\"infIco infPos\">\n\t\t<i class=\"fa fa-pencil-square-o\"></i>\n\t</div>\n\t<div class=\"infValue\">\n\t<h1 class=\"count\">\n\t\tМои публикации \n\t</h1>\n\t<p><a href=\"" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=core&module=search&do=user_activity&mid={$this->memberData['member_id']}", "public", ''), "", "") . "\" title=\"{$this->lang->words['my_content_link']}\"><i class=\"fa fa-pencil-square-o\"></i> {$this->lang->words['my_content_link']}</a> <span class='ipbMyContent'>(<strong>{$this->memberData['posts']}</strong>)</span></p>\n\t</div>\n\t</section>\n</div>\n</div>" : "") . "" : "") . "\n\n\t\t<!-- ::: NAVIGATION BREADCRUMBS ::: -->\n <div id='secondary_navigation' class='clearfix'>\n <ol class='breadcrumb top ipsList_inline left' id='breadcrumb'>\n " . ((!$this->settings['remove_forums_nav'] or ipsRegistry::$current_application == 'forums') ? "<li itemscope itemtype=\"http://data-vocabulary.org/Breadcrumb\" " . (!$this->did_first ? "class='first'" : "") . ">\n <a href='" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("act=idx", "public", ''), "false", "") . "' itemprop=\"url\">\n <span itemprop=\"title\">{$this->settings['board_name']}</span>\n </a>\n </li>\n " . (($this->did_first = 1) ? "" : "") . "" : "") . "\n " . $this->__f__145eeb66cb9bf0c260bf2a6ad03833a1($html, $documentHeadItems, $css, $jsModules, $metaTags, $header_items, $items, $footer_items, $stats) . " </ol>\n <ul id='secondary_links' class='ipsList_inline right'>\n " . (($this->settings['gl_show'] and $this->settings['gl_title']) ? "<li><a href='" . ($this->settings['gl_link'] ? "{$this->settings['gl_link']}" : "" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=forums&module=extras&section=boardrules", "public", ''), "", "") . "") . "' title='" . ($this->settings['gl_title'] ? "{$this->settings['gl_title']}" : "{$this->lang->words['board_rules']}") . "'> " . ($this->settings['gl_title'] ? "{$this->settings['gl_title']}" : "{$this->lang->words['board_rules']}") . "</a></li>" : "") . "\n <li><a href='" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=core&module=search&do=viewNewContent&search_app=" . (($this->registry->getCurrentApplication() != 'core' and IPSLib::appIsSearchable($this->registry->getCurrentApplication())) ? "{$this->registry->getCurrentApplication()}" : "forums") . "", "public", ''), "", "") . "' accesskey='2'>{$this->lang->words['view_new_posts']}</a></li>\n " . ($this->settings['showQuickNav'] == 'yes' ? "" . (!(!$this->memberData['member_id'] && $this->settings['force_login']) && !($this->settings['board_offline'] && !$this->memberData['g_access_offline']) && $this->memberData['g_view_board'] ? "\n <li><a href=\"" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=core&module=global&section=navigation&inapp=" . IPS_APP_COMPONENT . "", "public", ''), "", "") . "\" rel=\"quickNavigation\" accesskey='9' id='quickNavLaunch' title=\"{$this->lang->words['launch_quicknav']}\"><img src=\"{style_images_url}/icon_quicknav.png\" alt=\"\" /></a></li>\n " : "") . "" : "") . "\n </ul>\n </div>\n\n <!-- ::: TOP BAR: Sign in / register or user drop down and notification alerts ::: --> \n " . (($this->memberData['is_mod'] or !empty($this->memberData['access_report_center']) || ($this->memberData['g_access_cp'] and !$this->settings['security_remove_acp_link'])) ? "<div id='admin_bar'>\n " . (($this->memberData['g_access_cp'] and !$this->settings['security_remove_acp_link']) ? "\n <ul class='ipsList_inline right'>\n <li>\n <a href=\"{$this->settings['_admin_link']}\" title='{$this->lang->words['admin_cp']}' target=\"_blank\">{$this->lang->words['login_to_acp']}</a>\n </li>\n </ul>\n " : "") . "\n <ul class='ipsList_inline left'>\n <li><a href=\"" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=core&module=modcp", "public", ''), "", "") . "\" title='{$this->lang->words['gbl_modcp_link_title']}'>{$this->lang->words['gbl_modcp_link']}</a></li>\n " . ($this->memberData['access_report_center'] && $this->memberData['_cache']['report_num'] > 0 ? "\n <li class='active'>\n <a href=\"" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=core&module=reports&do=index", "public", ''), "", "") . "\" title='{$this->lang->words['view_reports']}'>{$this->memberData['_cache']['report_num']} {$this->lang->words['report_member_bar']}</a>\n </li>\n " : "") . "\n </ul></div>" : "") . "\n\n \n <noscript>\n <div class='message error'>\n <strong>{$this->lang->words['gbl_no_js_title']}</strong>\n <p>{$this->lang->words['gbl_no_js']}</p>\n </div>\n <br />\n </noscript>\n <!-- ::: CONTENT ::: -->\n " . ($items['adHeaderCode'] ? "\n <div class='ipsAd'>{$items['adHeaderCode']}</div>\n " : "") . "\n " . ($html ? "{$html}" : "") . "\n " . ($items['adFooterCode'] ? "\n <div class='ipsAd'>{$items['adFooterCode']}</div>\n " : "") . "\n <ol class='breadcrumb bottom ipsList_inline left clearfix clear'>\n " . (count($items['navigation']) ? " " . ((!$this->settings['remove_forums_nav'] or ipsRegistry::$current_application == 'forums') ? "<li><a href='" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("act=idx", "public", ''), "false", "") . "'>{$this->settings['board_name']}</a></li>\n " . (($this->did_first_bottom = 1) ? "" : "") . "" : "") . "\n " . $this->__f__38dd37b8bd6759cb2b81761f3a9ee6bc($html, $documentHeadItems, $css, $jsModules, $metaTags, $header_items, $items, $footer_items, $stats) . "" : "\n <li> </li>\n ") . "\n </ol>\n \n </div>\n \n </div>\n\n <!-- ::: FOOTER (Change skin, language, mark as read, etc) ::: -->\n <div id='footer_utilities' class='clearfix clear'>\n" . ($this->settings['largeFooter'] == 'yes' ? "<div id='siteinfo' class='wrapper main_width'>\n" . ($this->memberData['member_id'] ? "<div id=\"siteinfo-account\" class='left ipsPad_double'>\n <h3>Аккаунт</h3>\n <ul>\n <li><a href=\"" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=core&module=usercp", "public", ''), "", "") . "\" title=\"{$this->lang->words['cp_tool_tip']}\">{$this->lang->words['your_cp']}</a></li> \n " . ($this->memberData['members_disable_pm'] != 2 && $this->memberData['g_use_pm'] ? "\n <li><a href=\"" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=members&module=messaging", "public", ''), "", "") . "\">{$this->lang->words['user_dd_go_pm']}</a></li>\n " : "") . " \n <li><a href=\"" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=core&module=search&do=user_activity&mid={$this->memberData['member_id']}", "public", ''), "", "") . "\" title=\"{$this->lang->words['my_content_link']}\">{$this->lang->words['my_content_link']}</a></li>\n <li><a href=\"" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=core&module=global&section=login&do=logout&k={$this->member->form_hash}", "public", ''), "", "") . "\" data-confirmaction=\"Вы уверены, что хотите выйти?\">{$this->lang->words['log_out']}</a></li>\n </ul>\n</div>" : "") . "\n<div id=\"siteinfo-content\" class='right ipsPad_double'>\n <h3>O-RP.RU</h3>\n <p class=\"copyright\">\nOnline RolePlay © 2015<br>\n<!-- Copyright Information -->\n <p id='copyright'>\n\t\t\t\t\t\t\t<a href=\"https://vk.com/dfbest\">Web-Developer</a>\n </p>\n <!-- / Copyright -->\n </p>\n</div>\n</div>" : "<div class='wrapper clearfix'>\n " . $this->registry->getClass('output')->getReplacement("skinlink") . "\n <ul class='ipsList_inline left'>\n <li>\n <img src='{$this->settings['img_url']}/feed.png' alt='{$this->lang->words['rss_feed']}' id='rss_feed' class='clickable' />\n </li>\n " . (!$this->member->is_not_human ? "" . (($this->memberData['userAgentLocked'] and !$this->memberData['userAgentBypass']) ? "\n <li id='useragent_msg'>\n {$this->lang->words['skin_browser_set']} <a href='#' data-clicklaunch='changeSkin' data-skinid='unlockUserAgent'>{$this->lang->words['override_browser_theme']}</a>\n </li>\n " : "" . ($this->registry->output->isTouchDevice() ? "\n <li>\n <a href='#' data-clicklaunch='changeSkin' data-skinid='setAsMobile'>{$this->lang->words['set_mobile_theme']}</a>\n </li>\n " : "") . "\n " . (count($footer_items['skin_chooser']) > 1 ? "\n <li>\n <a rel=\"nofollow\" id='new_skin' href='#'>{$this->lang->words['change_theme']}</a> \n <ul id='new_skin_menucontent' class='ipbmenu_content with_checks' style='display: none'>\n " . $this->__f__866b289f23b7093bad01adb7eb875297($html, $documentHeadItems, $css, $jsModules, $metaTags, $header_items, $items, $footer_items, $stats) . " </ul>\n </li>\n " : "") . "") . "" : "") . "\n " . (!$this->member->is_not_human && count($footer_items['lang_chooser']['options']) > 1 ? "\n <li>\n <a rel=\"nofollow\" href='#' id='new_language'>{$footer_items['lang_chooser']['default']}</a> \n <ul id='new_language_menucontent' class='ipbmenu_content with_checks' style='display: none'>\n " . $this->__f__7b11089ac3b8ed4933a6f53e7681f6ca($html, $documentHeadItems, $css, $jsModules, $metaTags, $header_items, $items, $footer_items, $stats) . " </ul>\n </li>\n " : "") . "\n " . (!$this->member->is_not_human && ($this->memberData['member_id'] || $this->settings['topic_marking_guests']) ? "\n <li>\n <a rel=\"nofollow\" id='mark_all_read' href=\"" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=forums&module=forums&section=markasread&marktype=all&k={$this->member->form_hash}", "public", ''), "", "") . "\" title='{$this->lang->words['mark_all_as_read']}'>{$this->lang->words['mark_board_as_read']}</a>\n <ul id='mark_all_read_menucontent' class='ipbmenu_content' style='display: none'>\n " . $this->__f__590cef95a3f8cab365289537509b8a81($html, $documentHeadItems, $css, $jsModules, $metaTags, $header_items, $items, $footer_items, $stats) . " <li>\n <a href=\"" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=forums&module=forums&section=markasread&marktype=all&k={$this->member->form_hash}", "public", ''), "", "") . "\"><strong>{$this->lang->words['mark_all_as_read']}</strong></a>\n </li>\n </ul>\n </li>\n " : "") . "\n " . ($this->settings['priv_title'] ? "<li><a rel=\"nofollow\" href='" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=core&module=global&section=privacy", "public", ''), "false", "privacy") . "'>{$this->settings['priv_title']}</a></li>" : "") . "\n <li>\n <a href=\"" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=core&module=help", "public", ''), "", "") . "\" title='{$this->lang->words['view_help']}' rel=\"help\" accesskey='6'>{$this->lang->words['sj_help']}</a>\n </li>\n </ul>\n {$footer_items['copyright']}\n </div>\n</div>") . "\n </div>\n \n " . (($this->memberData['member_id'] and $this->settings['debug_level']) ? "<div id='ipsDebug_footer'>\n <strong>{$this->lang->words['time_now']}</strong> {$footer_items['time']}\n " . (($this->memberData['member_id'] and $this->memberData['last_visit']) ? "<strong>{$this->lang->words['you_last_visit']}</strong> " . IPSText::htmlspecialchars($this->registry->getClass('class_localization')->getDate($this->memberData['last_visit'], "short", 0)) . "" : "") . "\n <strong>{$this->lang->words['stat_exec']}</strong> {$stats['ex_time']} " . (is_float($stats['ex_time']) ? "{$this->lang->words['stats_sec']}" : "") . "\n <strong>{$this->lang->words['stat_load']}</strong> {$stats['server_load']}\n <strong>{$this->lang->words['stat_queries']}</strong> {$stats['queries']} " . (IPS_SQL_DEBUG_MODE ? "<a href='" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("{$this->settings['query_string_safe']}&debug=1", "public", ''), "", "") . "'>" : "") . "{$this->lang->words['stats_queries']}" . (IPS_SQL_DEBUG_MODE ? "</a>" : "") . "\n <strong>{$this->lang->words['stat_gzip']}</strong> {$stats['gzip_status']}\n </div>" : "") . "\n <div id='stats_div'>{$stats['task']}</div>\n " . ($this->settings['do_include_lightbox_real'] ? "\n " . (method_exists($this->registry->getClass('output')->getTemplate('global'), 'include_lightbox_real') ? $this->registry->getClass('output')->getTemplate('global')->include_lightbox_real() : '') . "\n " : "\n <script type=\"text/javascript\">\n ipb.global.lightBoxIsOff();\n </script>\n ") . "\n " . (!$this->memberData['member_id'] ? "" . (method_exists($this->registry->getClass('output')->getTemplate('global'), 'inlineLogin') ? $this->registry->getClass('output')->getTemplate('global')->inlineLogin() : '') . "" : "") . "\n \n </div>\n \n <!--DEBUG_STATS-->\n\n " . ($this->settings['defaultMoreDropdown'] == 'yes' ? "\n <script type='text/javascript'>\n if( \$('primary_nav') ){ ipb.global.activateMainMenu(); }\n </script>\n " : "") . "\n\n " . (($this->settings['viglink_enabled'] and (!$this->settings['viglink_groups'] or IPSMember::isInGroup($this->memberData, explode(',', $this->settings['viglink_groups'])))) ? "<script type=\"text/javascript\">\n var vglnk = { api_url: '//api.viglink.com/api',\n key: '{$this->settings['viglink_api_key']}'" . ($this->settings['viglink_subid'] ? ",\n sub_id: '{$this->settings['sub_id']}'\n " : "") . "\n };\n \n (function(d, t) {\n var s = d.createElement(t); s.type = 'text/javascript'; s.async = true;\n s.src = ('https:' == document.location.protocol ? vglnk.api_url :\n '//cdn.viglink.com/api') + '/vglnk.js';\n var r = d.getElementsByTagName(t)[0]; r.parentNode.insertBefore(s, r);\n }(document, 'script'));\n </script>" : "") . "\n\n <a rel=\"nofollow\" id='backtotop' href='#top' title='{$this->lang->words['go_to_top']}' style='display:none;'><i class=\"fa fa-chevron-up\"></i></a>\n </body>\n</html>"; return $IPBHTML; }
/** * Construct. * * @access public * @return void */ public function __construct($registry, $app_directory = '') { /* Make object */ $this->registry = $registry; $this->DB = $this->registry->DB(); $this->settings =& $this->registry->fetchSettings(); $this->request =& $this->registry->fetchRequest(); $this->lang = $this->registry->getClass('class_localization'); $this->member = $this->registry->member(); $this->memberData =& $this->registry->member()->fetchMemberData(); $this->cache = $this->registry->cache(); $this->caches =& $this->registry->cache()->fetchCaches(); /* Test */ if (IPSLib::fbc_enabled() !== TRUE) { throw new Exception('FACEBOOK_DISABLED_OR_NOT_SET_UP'); } /* Load and set up the facebook stuff */ require_once IPS_KERNEL_PATH . 'facebook-client/facebook.php'; $this->_fb = new Facebook($this->settings['fbc_api_id'], $this->settings['fbc_secret'], true); $this->_api = $this->_fb->api_client; }
/** * Run this task * * @return @e void */ public function runTask() { $counter = 0; $_sync = time() - 10800; $_active = time() - 86400 * 14; $members = array(); if (IPSLib::fbc_enabled() !== TRUE && IPSLib::twitter_enabled() !== TRUE) { $this->class->unlockTask($this->task); return; } //----------------------------------------- // Fetch members / Edit - only complete members // @link http://community.invisionpower.com/tracker/issue-29269-display-names-not-always-shown-in-status-updates //----------------------------------------- $this->DB->build(array('select' => 'm.member_id', 'from' => array('members' => 'm'), 'where' => '( (m.twitter_id != \'\' AND m.tc_lastsync < ' . $_sync . ') OR (m.fb_uid > 0 AND m.fb_lastsync < ' . $_sync . ') ) AND p.partial_id ' . $this->DB->buildIsNull(true) . ' AND m.last_activity > ' . $_active, 'order' => 'm.last_visit DESC', 'limit' => array(0, 30), 'add_join' => array(array('from' => array('members_partial' => 'p'), 'where' => 'p.partial_member_id=m.member_id', 'type' => 'left')))); $this->DB->execute(); while ($row = $this->DB->fetch()) { $members[] = $row['member_id']; } $members = IPSMember::load($members); foreach ($members as $member) { //----------------------------------------- // Facebook Sync //----------------------------------------- if (IPSLib::fbc_enabled() === TRUE) { if (!empty($member['fb_uid']) and !empty($member['fb_bwoptions'])) { /* We have a linked member and options, so check if they haven't sync'd in 24 hours and have been active in the past 90 days... */ try { $classToLoad = IPSLib::loadLibrary(IPS_ROOT_PATH . 'sources/classes/facebook/connect.php', 'facebook_connect'); $facebook = new $classToLoad(ipsRegistry::instance(), null, null, true); $_member = $facebook->syncMember($member, $member['fb_token'], $member['fb_uid']); $counter++; if ($_member and is_array($_member)) { $member = $_member; unset($_member); } } catch (Exception $error) { $msg = $error->getMessage(); switch ($msg) { case 'NOT_LINKED': case 'NO_MEMBER': case 'FACEBOOK_NO_APP_ID': break; } } } } //----------------------------------------- // Twitter Sync //----------------------------------------- if (IPSLib::twitter_enabled() === TRUE) { if (!empty($member['twitter_id']) and !empty($member['tc_bwoptions'])) { /* We have a linked member and options, so check if they haven't sync'd in 3 hours and have been active in the past 90 days... */ $classToLoad = IPSLib::loadLibrary(IPS_ROOT_PATH . 'sources/classes/twitter/connect.php', 'twitter_connect'); $twitter = new $classToLoad(ipsRegistry::instance()); try { $_member = $twitter->syncMember($member); $counter++; if ($_member and is_array($_member)) { $member = $_member; unset($_member); } } catch (Exception $error) { $msg = $error->getMessage(); switch ($msg) { case 'NOT_LINKED': case 'NO_MEMBER': break; } } } } } //----------------------------------------- // Log to log table - modify but dont delete //----------------------------------------- $this->class->appendTaskLog($this->task, "Updated " . $counter); //----------------------------------------- // Unlock Task: DO NOT MODIFY! //----------------------------------------- $this->class->unlockTask($this->task); }
function globalTemplateMinimal($html, $documentHeadItems, $css, $jsModules, $metaTags, array $header_items, $items = array(), $footer_items = array(), $stats = array()) { $IPBHTML = ""; if (IPSLib::locationHasHooks('skin_global_other', $this->_funcHooks['globalTemplateMinimal'])) { $count_16257f67e159588aefbdc0bd19287ee0 = is_array($this->functionData['globalTemplateMinimal']) ? count($this->functionData['globalTemplateMinimal']) : 0; $this->functionData['globalTemplateMinimal'][$count_16257f67e159588aefbdc0bd19287ee0]['html'] = $html; $this->functionData['globalTemplateMinimal'][$count_16257f67e159588aefbdc0bd19287ee0]['documentHeadItems'] = $documentHeadItems; $this->functionData['globalTemplateMinimal'][$count_16257f67e159588aefbdc0bd19287ee0]['css'] = $css; $this->functionData['globalTemplateMinimal'][$count_16257f67e159588aefbdc0bd19287ee0]['jsModules'] = $jsModules; $this->functionData['globalTemplateMinimal'][$count_16257f67e159588aefbdc0bd19287ee0]['metaTags'] = $metaTags; $this->functionData['globalTemplateMinimal'][$count_16257f67e159588aefbdc0bd19287ee0]['header_items'] = $header_items; $this->functionData['globalTemplateMinimal'][$count_16257f67e159588aefbdc0bd19287ee0]['items'] = $items; $this->functionData['globalTemplateMinimal'][$count_16257f67e159588aefbdc0bd19287ee0]['footer_items'] = $footer_items; $this->functionData['globalTemplateMinimal'][$count_16257f67e159588aefbdc0bd19287ee0]['stats'] = $stats; } $IPBHTML .= "<!DOCTYPE html>\n\t<html xml:lang=\"en\" lang=\"en\" xmlns=\"http://www.w3.org/1999/xhtml\"" . (IPSLib::fbc_enabled() === TRUE ? " xmlns:fb=\"http://www.facebook.com/2008/fbml\"" : "") . ">\n\t<head>\n\t\t<meta http-equiv=\"content-type\" content=\"text/html; charset={$this->settings['gb_char_set']}\" />\n\t\t<title>{$header_items['title']}" . ($header_items['page'] ? " {$this->lang->words['page_title_page']} {$header_items['page']}" : "") . "</title>\n\t\t<link rel=\"shortcut icon\" href='" . ($this->registry->output->isHTTPS ? "{$this->settings['board_url_https']}" : "{$this->settings['board_url']}") . "/favicon.ico' />\n\t\t<link rel=\"image_src\" href='{$this->settings['meta_imagesrc']}' />\n\t\t<script type='text/javascript'>\n\t\t//<![CDATA[\n\t\t\tjsDebug\t\t\t= " . intval($this->settings['_jsDebug']) . "; /* Must come before JS includes */\n\t\t\tUSE_RTE\t\t\t= 1;\n\t\t\tDISABLE_AJAX\t= parseInt({$this->settings['disable_text_ajax']}); /* Disables ajax requests where text is sent to the DB; helpful for charset issues */\n\t\t\tinACP\t\t\t= false;\n\t\t\tvar isRTL\t\t= false;\n\t\t\tvar rtlIe\t\t= '';\n\t\t\tvar rtlFull\t\t= '';\n\t\t//]]>\n\t\t</script>\n\t\t" . (method_exists($this->registry->getClass('output')->getTemplate('global'), 'includeCSS') ? $this->registry->getClass('output')->getTemplate('global')->includeCSS($css) : '') . "\n\t\t<meta property=\"og:title\" content=\"{$this->registry->output->encodeMetaTagContent(str_replace(' - ' . $this->settings['board_name'], '', $header_items['title']))}\"/>\n\t\t<meta property=\"og:site_name\" content=\"{$this->registry->output->encodeMetaTagContent($this->settings['board_name'])}\"/>\n\t\t<meta property=\"og:image\" content=\"{$this->settings['meta_imagesrc']}\"/>\n\t\t<meta property=\"og:type\" content=\"article\" />\n\t\t" . (method_exists($this->registry->getClass('output')->getTemplate('global'), 'includeMeta') ? $this->registry->getClass('output')->getTemplate('global')->includeMeta($metaTags) : '') . "\n\t\t" . ($this->registry->output->isLargeTouchDevice() ? "\n\t\t<meta name=\"viewport\" content=\"width=1024px; initial-scale=1.0; minimum-scale=1.0;\">\n\t\t" : "") . "\n\t\t" . ($this->registry->output->isSmallTouchDevice() ? "\n\t\t<meta name=\"viewport\" content=\"width=1024px\">\n\t\t" : "") . "\n\t\t" . (method_exists($this->registry->getClass('output')->getTemplate('global'), 'includeJS') ? $this->registry->getClass('output')->getTemplate('global')->includeJS($jsModules) : '') . "" . (method_exists($this->registry->getClass('output')->getTemplate('global'), 'includeFeeds') ? $this->registry->getClass('output')->getTemplate('global')->includeFeeds($documentHeadItems) : '') . "" . (method_exists($this->registry->getClass('output')->getTemplate('global'), 'includeRTL') ? $this->registry->getClass('output')->getTemplate('global')->includeRTL() : '') . "\t\t\n\t\t" . (method_exists($this->registry->getClass('output')->getTemplate('global'), 'includeVars') ? $this->registry->getClass('output')->getTemplate('global')->includeVars($header_items) : '') . "\n\t</head>\n\t<body id='ipboard_body' class='minimal'>\n\t\t<p id='content_jump' class='hide'><a id='top'></a><a href='#j_content' title='{$this->lang->words['jump_to_content']}' accesskey='m'>{$this->lang->words['jump_to_content']}</a></p>\n\t\t<div id='ipbwrapper'>\t\t\n\t\t\t<div id='content' class='clearfix'>\n\t\t\t\t{$items['adHeaderCode']}\n\t\t\t\t" . ($html ? "{$html}" : "") . "\n\t\t\t\t{$items['adFooterCode']}\n\t\t\t</div>\n\t\t\t<div class='ipsPad clearfix'>\n\t\t\t\t{$footer_items['copyright']}\n\t\t\t</div>\n\t\t\t" . (($this->memberData['member_id'] and $this->settings['debug_level']) ? "<div id='ipsDebug_footer'>\n\t\t\t\t\t<strong>{$this->lang->words['time_now']}</strong> {$footer_items['time']}\n\t\t\t\t\t" . (($this->memberData['member_id'] and $this->memberData['last_visit']) ? "<strong>{$this->lang->words['you_last_visit']}</strong> " . IPSText::htmlspecialchars($this->registry->getClass('class_localization')->getDate($this->memberData['last_visit'], "short", 0)) . "" : "") . "\n\t\t\t\t\t<strong>{$this->lang->words['stat_exec']}</strong> {$stats['ex_time']} " . (is_float($stats['ex_time']) ? "{$this->lang->words['stats_sec']}" : "") . "\n\t\t\t\t\t<strong>{$this->lang->words['stat_load']}</strong> {$stats['server_load']}\n\t\t\t\t\t<strong>{$this->lang->words['stat_queries']}</strong> {$stats['queries']} " . (IPS_SQL_DEBUG_MODE ? "<a href='" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("{$this->settings['query_string_safe']}&debug=1", "public", ''), "", "") . "'>" : "") . "{$this->lang->words['stats_queries']}" . (IPS_SQL_DEBUG_MODE ? "</a>" : "") . "\n\t\t\t\t\t<strong>{$this->lang->words['stat_gzip']}</strong> {$stats['gzip_status']}\n\t\t\t\t</div>" : "") . "\n\t\t\t<div style='height: 0px; overflow: hidden;'>{$stats['task']}</div>\n\t\t</div>\n\t\t\n\t\t<!--DEBUG_STATS-->\n\t</body>\n</html>"; return $IPBHTML; }
/** * Attempt to login a user to the mobile service * * @return string XML */ protected function _handleLogin() { /* 3.2 upwards renames these fields, but since we do this prior to getting capabilities, we don't know version yet */ $this->request['ips_username'] = ipsRegistry::$request['ips_username'] = $this->request['username']; $_REQUEST['ips_username'] = $_REQUEST['username']; $this->request['ips_password'] = ipsRegistry::$request['ips_password'] = $this->request['password']; $_REQUEST['ips_password'] = $_REQUEST['password']; /* Load the login handler */ $classToLoad = IPSLib::loadLibrary(IPS_ROOT_PATH . 'sources/handlers/han_login.php', 'han_login'); $this->han_login = new $classToLoad($this->registry); $this->han_login->init(); /* Attempt login */ $loginResult = $this->han_login->verifyLogin(); /* Fail */ if ($loginResult[2]) { $this->_returnError('Login Failed'); } else { $this->_returnXml(array('success' => 1, 'gallery' => $this->_userHasGallery($this->han_login->member_data) ? '1' : '0', 'status' => $this->_canUpdateStatus($this->han_login->member_data) ? '1' : '0', 'notifications' => $this->_userEnabledNotifications($this->han_login->member_data) ? '1' : '0', 'facebook' => IPSLib::fbc_enabled() && $this->han_login->member_data['fb_uid'] ? '1' : '0', 'twitter' => IPSLib::twitter_enabled() && $this->han_login->member_data['twitter_id'] ? '1' : '0', 'albums' => $this->_userAlbums($this->han_login->member_data), 'version_id' => ipsRegistry::$vn_full, 'version_text' => ipsRegistry::$version, 'form_hash' => md5($this->han_login->member_data['email'] . '&' . $this->han_login->member_data['member_login_key'] . '&' . $this->han_login->member_data['joined']))); } }
/** * Triggers external postings Twitter, etc * * @param array Update to... * @param int Status ID just posted * @param array [Array of member data for member updating their status - will use ->getAuthor() if null] * @param string [Content to update] * @todo [Future] At some point it could be expanded into a mini framework with plugins */ protected function _triggerExternalUpdates($updates, $status_id = 0, $author = null, $content = null) { $author = $author === null ? $this->getAuthor() : $author; $content = $content ? $this->_cleanContent($content) : $this->_cleanContent($this->getContent()); /* Fail safe */ if (!$author['member_id'] or !$content) { return false; } $url = $this->registry->output->buildSEOUrl('app=members&module=profile&section=status&type=single&status_id=' . $status_id, 'publicNoSession', array($author['member_id'], $author['members_seo_name']), 'members_status_single'); /* Twitter */ if ($updates['twitter']) { if (IPSLib::twitter_enabled() and $author['twitter_id']) { $classToLoad = IPSLib::loadLibrary(IPS_ROOT_PATH . 'sources/classes/twitter/connect.php', 'twitter_connect'); $twitter = new $classToLoad($this->registry, $author['twitter_token'], $author['twitter_secret']); $twitter->updateStatusWithUrl($content, $url, FALSE); } } /* Facebook */ if ($updates['facebook']) { if (IPSLib::fbc_enabled() and $author['fb_uid']) { $classToLoad = IPSLib::loadLibrary(IPS_ROOT_PATH . 'sources/classes/facebook/connect.php', 'facebook_connect'); $facebook = new $classToLoad($this->registry); $facebook->updateStatusWithUrl($content, $url, FALSE); } } }
function globalTemplateMinimal($html, $documentHeadItems, $css, $jsModules, $metaTags, array $header_items, $items = array(), $footer_items = array(), $stats = array()) { $IPBHTML = ""; if (IPSLib::locationHasHooks('skin_global_other', $this->_funcHooks['globalTemplateMinimal'])) { $count_25be4b93e45d45a0afcf5f204d65ae86 = is_array($this->functionData['globalTemplateMinimal']) ? count($this->functionData['globalTemplateMinimal']) : 0; $this->functionData['globalTemplateMinimal'][$count_25be4b93e45d45a0afcf5f204d65ae86]['html'] = $html; $this->functionData['globalTemplateMinimal'][$count_25be4b93e45d45a0afcf5f204d65ae86]['documentHeadItems'] = $documentHeadItems; $this->functionData['globalTemplateMinimal'][$count_25be4b93e45d45a0afcf5f204d65ae86]['css'] = $css; $this->functionData['globalTemplateMinimal'][$count_25be4b93e45d45a0afcf5f204d65ae86]['jsModules'] = $jsModules; $this->functionData['globalTemplateMinimal'][$count_25be4b93e45d45a0afcf5f204d65ae86]['metaTags'] = $metaTags; $this->functionData['globalTemplateMinimal'][$count_25be4b93e45d45a0afcf5f204d65ae86]['header_items'] = $header_items; $this->functionData['globalTemplateMinimal'][$count_25be4b93e45d45a0afcf5f204d65ae86]['items'] = $items; $this->functionData['globalTemplateMinimal'][$count_25be4b93e45d45a0afcf5f204d65ae86]['footer_items'] = $footer_items; $this->functionData['globalTemplateMinimal'][$count_25be4b93e45d45a0afcf5f204d65ae86]['stats'] = $stats; } $IPBHTML .= "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">\n\t<html xml:lang=\"ru\" lang=\"ru\" xmlns=\"http://www.w3.org/1999/xhtml\"" . (IPSLib::fbc_enabled() === TRUE ? " xmlns:fb=\"http://www.facebook.com/2008/fbml\"" : "") . ">\n\t<head>\n\t\t<meta http-equiv=\"content-type\" content=\"text/html; charset={$this->settings['gb_char_set']}\" />\n\t\t<title>{$header_items['title']}" . ($header_items['page'] ? " {$this->lang->words['page_title_page']} {$header_items['page']}" : "") . "</title>\n\t\t<link rel=\"shortcut icon\" href='" . ($this->registry->output->isHTTPS ? "{$this->settings['board_url_https']}" : "{$this->settings['board_url']}") . "/favicon.ico' />\n\t\t\n\t\t" . (method_exists($this->registry->getClass('output')->getTemplate('global'), 'includeJS') ? $this->registry->getClass('output')->getTemplate('global')->includeJS($jsModules) : '') . "" . (method_exists($this->registry->getClass('output')->getTemplate('global'), 'includeCSS') ? $this->registry->getClass('output')->getTemplate('global')->includeCSS($css) : '') . "\n\t\t<!--<meta http-equiv=\"X-UA-Compatible\" content=\"IE=7\" />-->\n\t\t" . (method_exists($this->registry->getClass('output')->getTemplate('global'), 'includeMeta') ? $this->registry->getClass('output')->getTemplate('global')->includeMeta($metaTags) : '') . "" . (method_exists($this->registry->getClass('output')->getTemplate('global'), 'includeFeeds') ? $this->registry->getClass('output')->getTemplate('global')->includeFeeds($documentHeadItems) : '') . "" . (method_exists($this->registry->getClass('output')->getTemplate('global'), 'includeRTL') ? $this->registry->getClass('output')->getTemplate('global')->includeRTL() : '') . "\n\t\t\n\t\t<!--<meta name=\"apple-mobile-web-app-capable\" content=\"yes\">-->\n\t\t<meta name=\"apple-mobile-web-app-status-bar-style\" content=\"black-translucent\" />\n\t\t<meta name=\"viewport\" content=\"initial-scale=1, maximum-scale=1, user-scalable = no;\">\n\t</head>\n\t<body id='ipboard_body'>\n\t\t<div id='ipbwrapper'>\n\t\t\t" . (count($items['navigation']) > 1 && !$this->settings['_mobile_nav_home'] ? "" . (($this->nav_count = count($items['navigation'])) ? "" : "") . "" . (($this->nav_back = isset($this->settings['_mobile_back_nav']) ? $this->settings['_mobile_back_nav'] : 2) ? "" : "") . "\n\t\t\t\t<div id='secondary_navigation'>\n\t\t\t\t\t<a href='" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("{$items['navigation'][$this->nav_count - $this->nav_back][1]}", "public", ''), "{$items['navigation'][$this->nav_count - $this->nav_back][2]}", "{$items['navigation'][$this->nav_count - $this->nav_back][3]}") . "'>{$this->lang->words['_larr']} {$items['navigation'][$this->nav_count - $this->nav_back][0]}</a>\n\t\t\t\t</div>" : "" . ((count($items['navigation']) == 1 || $this->settings['_mobile_nav_home']) && !$this->settings['_mobile_hide_nav'] ? "\n\t\t\t\t\t<div id='secondary_navigation'>\n\t\t\t\t\t\t<a href='" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("act=idx", "public", ''), "false", "") . "' class='back'>{$this->lang->words['_larr']} {$this->lang->words['home']}</a>\n\t\t\t\t\t</div>\n\t\t\t\t" : "") . "") . "\n\t\t\t" . (method_exists($this->registry->output->getTemplate($this->registry->getCurrentApplication() . '_global'), 'overwriteHeader') ? "\n\t\t\t\t" . (method_exists($this->registry->getClass('output')->getTemplate('' . $this->registry->getCurrentApplication() . '_global'), 'overwriteHeader') ? $this->registry->getClass('output')->getTemplate('' . $this->registry->getCurrentApplication() . '_global')->overwriteHeader() : '') . "\n\t\t\t" : "\n\t\t\t\t" . (method_exists($this->registry->getClass('output')->getTemplate('global'), 'defaultHeader') ? $this->registry->getClass('output')->getTemplate('global')->defaultHeader() : '') . "\n\t\t\t") . "\n\t\t\t<div id=\"options-button\">»</div>\t\n\t\t\t<div id='user_navigation'>\n\t\t\t\t" . (!$this->memberData['member_id'] ? "\n\t\t\t\t\t<a href='" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=core&module=global&section=login", "public", ''), "", "") . "' title='{$this->lang->words['sign_in']}'>{$this->lang->words['sign_in']}</a>\n\t\t\t\t\t<a href=\"" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=core&module=global&section=register", "public", ''), "", "") . "\" title='{$this->lang->words['register']}'>{$this->lang->words['register']}</a>\n\t\t\t\t" : "<a href=\"" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=core&module=global&section=login&do=logout&k={$this->member->form_hash}", "public", ''), "", "") . "\">{$this->lang->words['log_out']} ({$this->memberData['members_display_name']})</a>\n\t\t\t\t\t" . (($this->memberData['g_use_pm'] and $this->memberData['members_disable_pm'] == 0) ? "\n\t\t\t\t\t\t<a href='" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=members&module=messaging", "public", ''), "", "") . "' title='{$this->lang->words['your_messenger']}'>{$this->lang->words['your_messenger']}</a>\n\t\t\t\t\t" : "") . "") . "\n\t\t\t\t" . (!ipsRegistry::$applications['members']['app_hide_tab'] && !count(ipsRegistry::$applications['members']['app_tab_groups']) && !IPSMember::isInGroup($this->memberData, ipsRegistry::$applications['members']['app_tab_groups']) ? "<a href='" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=members", "public", ''), "false", "") . "' title='{$this->lang->words['go_to_memberlist']}'>{$this->lang->words['tb_mlist']}</a>" : "") . "\n\t\t\t\t" . (ipsRegistry::$applications['blog']['app_enabled'] ? "\n\t\t\t\t\t<a href='" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=blog", "public", ''), "false", "") . "' title='{$this->lang->words['go_to_prefix']}" . IPSLib::getAppTitle('blog') . "'>" . IPSLib::getAppTitle('blog') . "</a>\n\t\t\t\t" : "") . "\n\t\t\t\t" . (ipsRegistry::$applications['gallery']['app_enabled'] ? "\n\t\t\t\t\t<a href='" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=gallery", "public", ''), "false", "") . "' title='{$this->lang->words['go_to_prefix']}" . IPSLib::getAppTitle('gallery') . "'>" . IPSLib::getAppTitle('gallery') . "</a>\n\t\t\t\t" : "") . "\n\t\t\t\t<a href='" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=core&module=search&do=viewNewContent&search_app=" . (($this->registry->getCurrentApplication() != 'core' and IPSLib::appIsSearchable($this->registry->getCurrentApplication())) ? "{$this->registry->getCurrentApplication()}" : "forums") . "", "public", ''), "", "") . "' accesskey='2'>{$this->lang->words['view_new_posts']}</a>\n\t\t\t\t<a href='" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=members&module=profile&section=status&type=all", "public", ''), "true", "members_status_all") . "'>{$this->lang->words['mob_status_updates']}</a>\n\t\t\t\t<a href='" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=core&module=search", "public", ''), "", "") . "' accesskey='2'>{$this->lang->words['sj_search']}</a>\n\t\t\t</div>\n\t\t\t<script type=\"text/javascript\">\n\t\t\t\t/* Prevent flash of header */\n\t\t\t\tdocument.getElementById('user_navigation').style.display = 'none';\n\t\t\t</script>\n\t\t\t\n\t\t\t<div id='content' class='clear'>\n\t\t\t\t" . ($html ? "{$html}" : "") . "\n\t\t\t</div>\n\t\t\t\n\t\t\t<div id='footer' class='clear'>\n\t\t\t\t" . ($this->memberData['userAgentType'] != 'mobileAppLegacy' || $this->registry->output->isLargeTouchDevice() ? "\n\t\t\t\t\t<a id='full_version' href='#'>{$this->lang->words['full_version']}</a>\n\t\t\t\t" : "") . "\n\t\t\t\t" . (count($footer_items['lang_chooser']['options']) ? "\n\t\t\t\t\t<a href='#' id='show_langs'>{$footer_items['lang_chooser']['default']}</a>\n\t\t\t\t\t<div id='show_langs_box' style='display: none'>\n\t\t\t\t\t\t<form action=\"" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("{$this->settings['query_string_formatted']}", "public", ''), "", "") . "\" method=\"post\">\n\t\t\t\t\t\t\t<fieldset>\n\t\t\t\t\t\t\t\t<input type='hidden' name='k' value='{$this->member->form_hash}' />\n\t\t\t\t\t\t\t\t<input type='hidden' name='setlanguage' value='1' />\n\t\t\t\t\t\t\t\t<input type=\"hidden\" name=\"langurlbits\" value=\"cal_id={$this->request['cal_id']}\" />\n\t\t\t\t\t\t\t\t<label for='newLang' class='hide'>{$this->lang->words['language_prefix']}</label>\n\t\t\t\t\t\t\t\t<select name=\"langid\" id='newLang'>\n\t\t\t\t\t\t\t\t\t" . $this->__f__42eeecc43bfed00ea413c2df51bfa966($html, $documentHeadItems, $css, $jsModules, $metaTags, $header_items, $items, $footer_items, $stats) . "\t\t\t\t\t\t\t\t</select>\n\t\t\t\t\t\t\t\t<input type='submit' class='input_submit alt' value='{$this->lang->words['jmp_go']}' id='newLangSubmit' />\n\t\t\t\t\t\t\t</fieldset>\n\t\t\t\t\t\t</form>\n\t\t\t\t\t</div>\n\t\t\t\t" : "") . "\n\t\t\t\t" . (($this->memberData['userAgentKey'] == 'iphone' || $this->memberData['userAgentKey'] == 'ipodtouch' and !$this->member->isMobileApp) ? "\n\t\t\t\t\t<div><a href=\"http://www.invisionpower.com/download/goiphone.php\">{$this->lang->words['freeiphoneapp']}</a></div>\n\t\t\t\t" : "") . "\n\t\t\t</div>\n\t\t\t<div id='task'>{$stats['task']}</div>\n\t\t</div>\n\t\t<div id='shade' style='display:none'></div>\n\t\t<!-- pre-load -->\n\t\t<div style='display:none'><img src='{style_images_url}/wait.gif' /></div>\n\t</body>\n</html>"; return $IPBHTML; }
/** * Parse a member's profile photo * * @access public * @param mixed Either array of member data, or member ID to self load * @return array Member's photo details */ public static function buildProfilePhoto($member) { //----------------------------------------- // Load the member? //----------------------------------------- if (!is_array($member) and $member == intval($member) and $member > 0) { $member = self::load($member, 'extendedProfile'); } else { if ($member == 0) { $member = array(); } } //----------------------------------------- // Facebook Sync //----------------------------------------- if (IPSLib::fbc_enabled() === TRUE) { if ($member['fb_uid'] and $member['fb_bwoptions']) { $_sync = time() - 86400; $_active = time() - 86400 * 90; /* We have a linked member and options, so check if they haven't sync'd in 24 hours and have been active in the past 90 days... */ if ($member['fb_lastsync'] < $_sync and $member['last_visit'] > $_active) { require_once IPS_ROOT_PATH . 'sources/classes/facebook/connect.php'; $facebook = new facebook_connect(ipsRegistry::instance()); try { $member = $facebook->syncMember($member); } catch (Exception $error) { $msg = $error->getMessage(); switch ($msg) { case 'NOT_LINKED': case 'NO_MEMBER': break; } } } } } //----------------------------------------- // Facebook? //----------------------------------------- if ($member['fb_photo'] and ipsRegistry::member()->getProperty('g_mem_info')) { $member['_has_photo'] = 1; /* Main... */ $member['pp_main_photo'] = $member['fb_photo']; $member['pp_main_width'] = '*'; $member['pp_main_height'] = '*'; /* Thumb */ $member['pp_thumb_photo'] = $member['fb_photo_thumb']; $member['pp_thumb_width'] = 50; $member['pp_thumb_height'] = 50; /* Mini */ $member['pp_mini_photo'] = $member['fb_photo_thumb']; $member['pp_mini_width'] = 25; $member['pp_mini_height'] = 25; } else { //----------------------------------------- // Main photo //----------------------------------------- if (!$member['pp_main_photo'] or !ipsRegistry::member()->getProperty('g_mem_info')) { $member['pp_main_photo'] = ipsRegistry::$settings['img_url'] . '/profile/default_large.png'; $member['pp_main_width'] = 150; $member['pp_main_height'] = 150; $member['_has_photo'] = 0; } else { $member['pp_main_photo'] = ipsRegistry::$settings['upload_url'] . '/' . $member['pp_main_photo']; $member['_has_photo'] = 1; } //----------------------------------------- // Thumbie //----------------------------------------- if (!$member['pp_thumb_photo'] or $member['pp_thumb_photo'] == 'profile/') { if ($member['_has_photo']) { $member['pp_thumb_photo'] = $member['pp_main_photo']; } else { $member['pp_thumb_photo'] = ipsRegistry::$settings['img_url'] . '/profile/default_thumb.png'; } $member['pp_thumb_width'] = 50; $member['pp_thumb_height'] = 50; } else { if ($member['_has_photo']) { $member['pp_thumb_photo'] = ipsRegistry::$settings['upload_url'] . '/' . $member['pp_thumb_photo']; } else { $member['pp_thumb_photo'] = ipsRegistry::$settings['img_url'] . '/profile/default_thumb.png'; } } //----------------------------------------- // Mini //----------------------------------------- $_data = IPSLib::scaleImage(array('max_height' => 25, 'max_width' => 25, 'cur_width' => $member['pp_thumb_width'], 'cur_height' => $member['pp_thumb_height'])); $member['pp_mini_photo'] = $member['pp_thumb_photo']; $member['pp_mini_width'] = $_data['img_width']; $member['pp_mini_height'] = $_data['img_height']; } return $member; }
/** * UserCP Save Form: Facebook * * @return array Errors */ public function saveFacebook() { if (!IPSLib::fbc_enabled()) { $this->registry->getClass('output')->showError('fbc_disabled', 1005); } //----------------------------------------- // Data //----------------------------------------- $toSave = IPSBWOptions::thaw($this->memberData['members_bitoptions'], 'members'); //----------------------------------------- // Loop and save... simple //----------------------------------------- foreach (array('fbc_s_pic', 'fbc_s_status', 'fbc_s_aboutme', 'fbc_si_status') as $field) { $toSave[$field] = intval($this->request[$field]); } $this->memberData['fb_bwoptions'] = IPSBWOptions::freeze($toSave, 'facebook'); IPSMember::save($this->memberData['member_id'], array('extendedProfile' => array('fb_bwoptions' => $this->memberData['fb_bwoptions']))); //----------------------------------------- // Now sync //----------------------------------------- $classToLoad = IPSLib::loadLibrary(IPS_ROOT_PATH . 'sources/classes/facebook/connect.php', 'facebook_connect'); $facebook = new $classToLoad($this->registry); try { $facebook->syncMember($this->memberData); } catch (Exception $error) { $msg = $error->getMessage(); switch ($msg) { case 'NOT_LINKED': case 'NO_MEMBER': break; } } return TRUE; }
function globalTemplate($html, $documentHeadItems, $css, $jsModules, $metaTags, array $header_items, $items = array(), $footer_items = array(), $stats = array()) { $IPBHTML = ""; if (IPSLib::locationHasHooks('skin_global', $this->_funcHooks['globalTemplate'])) { $count_68e2005a22cac3c53b26528c84a70bfd = is_array($this->functionData['globalTemplate']) ? count($this->functionData['globalTemplate']) : 0; $this->functionData['globalTemplate'][$count_68e2005a22cac3c53b26528c84a70bfd]['html'] = $html; $this->functionData['globalTemplate'][$count_68e2005a22cac3c53b26528c84a70bfd]['documentHeadItems'] = $documentHeadItems; $this->functionData['globalTemplate'][$count_68e2005a22cac3c53b26528c84a70bfd]['css'] = $css; $this->functionData['globalTemplate'][$count_68e2005a22cac3c53b26528c84a70bfd]['jsModules'] = $jsModules; $this->functionData['globalTemplate'][$count_68e2005a22cac3c53b26528c84a70bfd]['metaTags'] = $metaTags; $this->functionData['globalTemplate'][$count_68e2005a22cac3c53b26528c84a70bfd]['header_items'] = $header_items; $this->functionData['globalTemplate'][$count_68e2005a22cac3c53b26528c84a70bfd]['items'] = $items; $this->functionData['globalTemplate'][$count_68e2005a22cac3c53b26528c84a70bfd]['footer_items'] = $footer_items; $this->functionData['globalTemplate'][$count_68e2005a22cac3c53b26528c84a70bfd]['stats'] = $stats; } $this->did_first = 0; $IPBHTML .= "<!DOCTYPE html>\n\t<html lang=\"en\" " . (IPSLib::fbc_enabled() === TRUE || $this->settings['fbc_appid'] ? " xmlns:fb=\"http://www.facebook.com/2008/fbml\"" : "") . ">\n\t<head>\n\t\t<meta charset=\"{$this->settings['gb_char_set']}\" />\n\t\t<title>{$header_items['title']}</title>\n\t\t<meta http-equiv=\"X-UA-Compatible\" content=\"IE=edge\" />\n\t\t<link rel=\"shortcut icon\" href='" . ($this->registry->output->isHTTPS ? "{$this->settings['board_url_https']}" : "{$this->settings['board_url']}") . "/favicon.ico' />\n <link href=\"http://fonts.googleapis.com/css?family=Oswald|Droid+Sans:400,700\" rel=\"stylesheet\">\n\t\t<link rel=\"image_src\" href='{$this->settings['meta_imagesrc']}' />\n\t\t<script type='text/javascript'>\n\t\t//<![CDATA[\n\t\t\tjsDebug\t\t\t= " . intval($this->settings['_jsDebug']) . "; /* Must come before JS includes */\n\t\t\tDISABLE_AJAX\t= parseInt({$this->settings['disable_text_ajax']}); /* Disables ajax requests where text is sent to the DB; helpful for charset issues */\n\t\t\tinACP\t\t\t= false;\n\t\t\tvar isRTL\t\t= false;\n\t\t\tvar rtlIe\t\t= '';\n\t\t\tvar rtlFull\t\t= '';\n\t\t//]]>\n\t\t</script>\n\t\t" . (method_exists($this->registry->getClass('output')->getTemplate('global'), 'includeCSS') ? $this->registry->getClass('output')->getTemplate('global')->includeCSS($css) : '') . "\n\t\t<meta property=\"og:title\" content=\"{$this->registry->output->encodeMetaTagContent(str_replace(' - ' . $this->settings['board_name'], '', $header_items['title']))}\"/>\n\t\t<meta property=\"og:site_name\" content=\"{$this->registry->output->encodeMetaTagContent($this->settings['board_name'])}\"/>\n\t\t<meta property=\"og:type\" content=\"article\" />\n\t\t" . (method_exists($this->registry->getClass('output')->getTemplate('global'), 'includeMeta') ? $this->registry->getClass('output')->getTemplate('global')->includeMeta($metaTags) : '') . "\n\t\t" . ($this->registry->output->isLargeTouchDevice() ? "\n\t\t<!--<meta name=\"viewport\" content=\"width=device-width;\">-->\n\t\t" : "") . "\n\t\t" . ($this->registry->output->isSmallTouchDevice() ? "\n\t\t<meta name=\"viewport\" content=\"width=1024px\">\n\t\t" : "") . "\n\t\t" . (method_exists($this->registry->getClass('output')->getTemplate('global'), 'includeJS') ? $this->registry->getClass('output')->getTemplate('global')->includeJS($jsModules) : '') . "" . (method_exists($this->registry->getClass('output')->getTemplate('global'), 'includeFeeds') ? $this->registry->getClass('output')->getTemplate('global')->includeFeeds($documentHeadItems) : '') . "" . (method_exists($this->registry->getClass('output')->getTemplate('global'), 'includeRTL') ? $this->registry->getClass('output')->getTemplate('global')->includeRTL() : '') . "\t\t\n\t\t" . (method_exists($this->registry->getClass('output')->getTemplate('global'), 'includeVars') ? $this->registry->getClass('output')->getTemplate('global')->includeVars($header_items) : '') . "" . (method_exists($this->registry->getClass('output')->getTemplate('global'), 'audentio_config') ? $this->registry->getClass('output')->getTemplate('global')->audentio_config() : '') . "\n\t\t\n\n\t</head>\n\t<body id='ipboard_body'>\n\t\t\n<p id='content_jump' class='hide'><a id='top'></a><a href='#j_content' title='{$this->lang->words['jump_to_content']}' accesskey='m'>{$this->lang->words['jump_to_content']}</a></p>\n\t\t<div id='ipbwrapper'>\n<!-- ::: USER BAR: Sign in / register or user drop down and notification alerts ::: -->\n<div class=\"top_panel\">\n <div class=\"wrapper\">\n\n<ul class=\"aud_list right\" style=\"float: left;\">\n\t\t\t\t\t" . ($this->memberData['g_use_search'] ? "\n\t\t\t\t\t\t" . (method_exists($this->registry->getClass('output')->getTemplate('global'), 'quickSearch') ? $this->registry->getClass('output')->getTemplate('global')->quickSearch() : '') . "\n\t\t\t\t\t" : "") . "\n\t\t\t\t\t\t" . (!(!$this->memberData['member_id'] && $this->settings['force_login']) && !($this->settings['board_offline'] && !$this->memberData['g_access_offline']) && $this->memberData['g_view_board'] ? "\n\t\t\t\t\t\t\t<li class='right'>\n\t\t\t\t\t\t\t\t<a href=\"" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=core&module=global§ion=navigation&inapp=" . IPS_APP_COMPONENT . "", "public", ''), "", "") . "\" rel=\"quickNavigation\" accesskey='9' id='quickNavLaunch' data-tooltip=\"{$this->lang->words['launch_quicknav']}\"><span> </span></a>\n\t\t\t\t\t\t\t</li>\n\t\t\t\t\t\t" : "") . "\n\t\t\t\t\t\t<li id='nav_explore' class='right'>\n\t\t\t\t\t\t\t<a href='" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=core&module=search&do=viewNewContent&search_app=" . (($this->registry->getCurrentApplication() != 'core' and IPSLib::appIsSearchable($this->registry->getCurrentApplication())) ? "{$this->registry->getCurrentApplication()}" : "forums") . "", "public", ''), "", "") . "' accesskey='2'>{$this->lang->words['view_new_posts']}</a>\n\t\t\t\t\t\t</li>\n\t\t\t\t\t\t" . (($this->memberData['is_mod'] or !empty($this->memberData['access_report_center']) || ($this->memberData['g_access_cp'] and !$this->settings['security_remove_acp_link'])) ? "" . ($this->memberData['access_report_center'] && $this->memberData['_cache']['report_num'] > 0 ? "\n\t\t\t\t\t\t\t\t<li class='right active'>\n\t\t\t\t\t\t\t\t\t<a href=\"" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=core&module=reports&do=index", "public", ''), "", "") . "\" title='{$this->lang->words['view_reports']}'>{$this->memberData['_cache']['report_num']} {$this->lang->words['report_member_bar']}</a>\n\t\t\t\t\t\t\t\t</li>\n\t\t\t\t\t\t\t" : "") . "\n\t\t\t\t\t\t\t<li class='right'><a href=\"" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=core&module=modcp", "public", ''), "", "") . "\" title='{$this->lang->words['gbl_modcp_link']}'>{$this->lang->words['gbl_modcp_link']}</a></li>\n\t\t\t\t\t\t\t" . (($this->memberData['g_access_cp'] and !$this->settings['security_remove_acp_link']) ? "\n\t\t\t\t\t\t\t\t<li class='right'>\n\t\t\t\t\t\t\t\t\t<a href=\"{$this->settings['_admin_link']}\" title='{$this->lang->words['admin_cp']}' target=\"_blank\">{$this->lang->words['login_to_acp']}</a>\n\t\t\t\t\t\t\t\t</li>\n\t\t\t\t\t\t\t" : "") . "" : "") . "\n</ul>\n<div style=\"float: right;\">\n " . ($this->memberData['member_id'] ? "<div id='user_navigation' class='logged_in'>\n\t\t\t\t\t\t\t<ul class='ipsList_inline left'>\n\n\t\t\t\t\t\t\t\t<li class=\"right_border\"><a href=\"" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("showuser={$this->memberData['member_id']}", "public", ''), "{$this->memberData['members_seo_name']}", "showuser") . "\" data-tooltip='{$this->lang->words['your_profile']}' class='aud_userPhotoLink'>\n\t\t\t\t\t\t\t\t<img class=\"aud_userPhoto ipsUserPhoto\" src='{$this->memberData['pp_small_photo']}' alt=\"{$this->memberData['members_display_name']}{$this->lang->words['users_photo']}\" />\n </a></li>\n\n\t\t\t\t\t\t\t\t<li><a id='user_link' href=\"" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("showuser={$this->memberData['member_id']}", "public", ''), "{$this->memberData['members_seo_name']}", "showuser") . "\">{$this->memberData['members_display_name']} <span id='user_link_dd'></span></a></li>\t\n\t\t\t\t\t\t\t\t" . (!(!$this->memberData['member_id'] && $this->settings['force_login']) && !($this->settings['board_offline'] && !$this->memberData['g_access_offline']) ? "" . (($this->memberData['g_use_pm'] and $this->memberData['members_disable_pm'] == 0) ? "<li><a data-clicklaunch=\"getInboxList\" id='inbox_link' href='" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=members&module=messaging", "public", ''), "", "") . "' data-tooltip='{$this->lang->words['your_messenger']}'>" . ($this->memberData['msg_count_new'] ? "<span class='ipsHasNotifications'>{$this->memberData['msg_count_new']}</span>" : "") . " </a></li>" : "") . "\n\t\t\t\t\t\t\t\t\t<li><a data-clicklaunch=\"getNotificationsList\" id='notify_link' href=\"" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=core&module=usercp&area=notificationlog", "public", ''), "", "") . "\" data-tooltip=\"{$this->lang->words['notifications_at_the_top']}\">" . ($this->memberData['notification_cnt'] ? "<span class='ipsHasNotifications'>{$this->memberData['notification_cnt']}</span>" : "") . " </a></li>" : "") . "\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t<li><a id=\"logout_link\" href=\"" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=core&module=global§ion=login&do=logout&k={$this->member->form_hash}", "public", ''), "", "") . "\" data-tooltip=\"{$this->lang->words['log_out']}\"></a></li>\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t" . ($this->memberData['member_group_id'] == $this->settings['auth_group'] ? "\n\t\t\t\t\t\t\t\t\t<li><a href=\"" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=core&module=global§ion=register&do=reval", "public", ''), "", "") . "\" title='{$this->lang->words['resend_val']}'>{$this->lang->words['resend_val']}</a></li>\n\t\t\t\t\t\t\t\t" : "") . "\n\t\t\t\t\t\t\t</ul>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\n\t\t\t\t\t\t<!-- ::: USER DROP DOWN MENU ::: -->\n\t\t\t\t\t\t<div id='user_link_menucontent' class='ipsHeaderMenu clearfix boxShadow' style='display: none'>\n\t\t\t\t\t\t\t<a href=\"" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("showuser={$this->memberData['member_id']}", "public", ''), "{$this->memberData['members_seo_name']}", "showuser") . "\" title='{$this->lang->words['your_profile']}' class='ipsUserPhotoLink left'>\n\t\t\t\t\t\t\t\t<img src='{$this->memberData['pp_small_photo']}' alt=\"" . sprintf($this->lang->words['users_photo'], $this->memberData['members_display_name']) . "\" class='ipsUserPhoto ipsUserPhoto_medium photo' />\n\t\t\t\t\t\t\t</a>\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t<div class='left'>\n\t\t\t\t\t\t\t\t" . ($this->registry->getClass('memberStatus')->canCreate($this->memberData) && !($this->settings['board_offline'] && !$this->memberData['g_access_offline']) ? "<form id='statusForm' action='{$this->settings['base_url']}app=members&module=profile§ion=status&do=new&k={$this->member->form_hash}&id={$this->memberData['member_id']}' method='post'>\n\t\t\t\t\t\t\t\t\t\t<input type='text' id='statusUpdateGlobal' name='content' class='input_text' style='width: 97%' /><br />\n\t\t\t\t\t\t\t\t\t\t<input type='submit' id='statusSubmitGlobal' class='ipsButton_secondary' value='{$this->lang->words['global_update_status']}' />\n\t\t\t\t\t\t\t\t\t\t" . (((IPSLib::twitter_enabled() or IPSLib::fbc_enabled()) and ($this->memberData['fb_uid'] or $this->memberData['twitter_id'])) ? " \n\t\t\t\t\t\t\t\t\t\t\t" . ((IPSLib::twitter_enabled() and $this->memberData['twitter_id']) ? "<input type='checkbox' id='su_TwitterGlobal' value='1' name='su_Twitter' /> <label for='su_TwitterGlobal' class='desc ipsType_smaller'>Twitter</label>" : "") . " \n\t\t\t\t\t\t\t\t\t\t\t" . ((IPSLib::fbc_enabled() and $this->memberData['fb_uid']) ? " <input type='checkbox' id='su_FacebookGlobal' value='1' name='su_Facebook' /> <label for='su_FacebookGlobal' class='desc ipsType_smaller'>Facebook</label>" : "") . "" : "") . "\n\t\t\t\t\t\t\t\t\t\t<br />\n\t\t\t\t\t\t\t\t\t\t<hr />\n\t\t\t\t\t\t\t\t\t</form>" : "") . "\n\t\t\t\t\t\t\t\t\t<ul id='links'>\n\t\t\t\t\t\t\t\t\t\t<li id='user_profile'><a href='" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("showuser={$this->memberData['member_id']}", "public", ''), "{$this->memberData['members_seo_name']}", "showuser") . "' title='{$this->lang->words['your_profile']}'>{$this->lang->words['my_profile']}</a></li>\n\t\t\t\t\t\t\t\t\t\t<li id='user_ucp'><a href=\"" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=core&module=usercp", "public", ''), "", "") . "\" title=\"{$this->lang->words['cp_tool_tip']}\">{$this->lang->words['your_cp']}</a></li>\n\t\t\t\t\t\t\t\t\t\t<li id='user_content'><a href=\"" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=core&module=search&do=user_activity&mid={$this->memberData['member_id']}", "public", ''), "", "") . "\" title=\"{$this->lang->words['my_content_link']}\">{$this->lang->words['my_content_link']}</a></li>\n\t\t\t\t\t\t\t\t\t\t" . (count(IPSLib::getEnabledApplications('like')) ? "\n\t\t\t\t\t\t\t\t\t\t\t<li id='user_likes'><a href='" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=core&module=search&do=followed", "public", ''), "", "") . "' title='{$this->lang->words['your_likes']}'>{$this->lang->words['your_likes']}</a></li>\n\t\t\t\t\t\t\t\t\t\t" : "") . "\n\t\t\t\t\t\t\t\t\t\t" . ($this->settings['friends_enabled'] && $this->memberData['g_can_add_friends'] ? "\n\t\t\t\t\t\t\t\t\t\t\t<li id='user_friends'><a href='" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=members&module=profile§ion=friends&do=list", "public", ''), "", "") . "' title=\"{$this->lang->words['manage_friends']}\" class='manage_friends'>{$this->lang->words['manage_friends']}</a></li>\n\t\t\t\t\t\t\t\t\t\t" : "") . "\n\t\t\t\t\t\t\t\t\t\t<li id='user_enemies'><a href='" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=core&module=usercp&tab=core&area=ignoredusers", "public", ''), "", "") . "' title=\"{$this->lang->words['manage_ignored_users']}\" class='manage_enemies'>{$this->lang->words['manage_ignored_users']}</a></li>\n\t\t\t\t\t\t\t\t\t\t" . (($this->memberData['has_blog'] and IPSLib::appIsInstalled('blog')) ? "\n\t\t\t\t\t\t\t\t\t\t\t<li id='user_blog'><a href=\"" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=blog&module=manage", "public", ''), "false", "manageblog") . "\">{$this->lang->words['manage_blogs']}</a></li>\n\t\t\t\t\t\t\t\t\t\t" : "") . "\n\t\t\t\t\t\t\t\t\t\t" . ($this->memberData['members_disable_pm'] != 2 ? "\n\t\t\t\t\t\t\t\t\t\t\t<li id='user_pm'><a href=\"" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=members&module=messaging", "public", ''), "", "") . "\">{$this->lang->words['user_dd_go_pm']}</a></li>\n\t\t\t\t\t\t\t\t\t\t" : "") . "\n\t\t\t\t\t\t\t\t\t\t" . (($this->memberData['has_gallery'] and IPSLib::appIsInstalled('gallery')) ? "\n\t\t\t\t\t\t\t\t\t\t\t<li id='user_gallery'><a href='" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=gallery&user={$this->memberData['member_id']}", "public", ''), "{$this->memberData['members_seo_name']}", "useralbum") . "' title=\"{$this->lang->words['go_to_my_gallery']}\">{$this->lang->words['my_gallery']}</a></li>\n\t\t\t\t\t\t\t\t\t\t" : "") . "\n\t\t\t\t\t\t\t\t\t\t" . (IPSLib::appIsInstalled('nexus') ? "\n\t\t\t\t\t\t\t\t\t\t\t<li id='user_nexus'><a href='" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=nexus&module=clients", "public", ''), "", "") . "' title=\"{$this->lang->words['client_area']}\">{$this->lang->words['client_area']}</a></li>\n\t\t\t\t\t\t\t\t\t\t" : "") . "\n\t\t\t\t\t\t\t\t\t</ul>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</div>" : "<div id='user_navigation' class='not_logged_in'>\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t<ul class='ipsList_inline cubic_list left'>\n\t\t\t\t\t\t\t\t<li>\n\t\t\t\t\t\t\t\t\t<span class='services'>\n\t\t\t\t\t\t\t\t\t" . (IPSLib::loginMethod_enabled('facebook') ? "\n\t\t\t\t\t\t\t\t\t<a href='" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=core&module=global§ion=login&serviceClick=facebook", "public", ''), "", "") . "'>" . $this->registry->getClass('output')->getReplacement("lim_facebook") . "</a>\n\t\t\t\t\t\t\t\t\t" : "") . "\n\n\t\t\t\t\t\t\t\t\t" . (IPSLib::loginMethod_enabled('twitter') ? "\n\t\t\t\t\t\t\t\t\t<a href='" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=core&module=global§ion=login&serviceClick=twitter", "public", ''), "", "") . "'>" . $this->registry->getClass('output')->getReplacement("lim_twitter") . "</a>\n\t\t\t\t\t\t\t\t\t" : "") . "\n\n\t\t\t\t\t\t\t\t\t" . (IPSLib::loginMethod_enabled('live') ? "\n\t\t\t\t\t\t\t\t\t<a href='" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=core&module=global§ion=login&do=process&use_live=1&auth_key={$this->member->form_hash}", "public", ''), "", "") . "'>" . $this->registry->getClass('output')->getReplacement("lim_windows") . "</a>\n\t\t\t\t\t\t\t\t\t" : "") . "\t\t\t\t\n\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t<a class=\"border_bord\" href='" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=core&module=global§ion=login", "public", ''), "", "") . "' title='{$this->lang->words['sign_in']}' id='sign_in'>\n\t\t\t\t\t\t\t\t\t<i class=\"aud_icon icon-login\"></i> {$this->lang->words['sign_in']}</a>\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t<a href=\"" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=core&module=global§ion=register", "public", ''), "", "") . "\" title='{$this->lang->words['register']}' id='register_link'><i class=\"aud_icon icon-register\"></i> {$this->lang->words['register']}</a>\n\t\t\t\t\t\t\t\t</li>\n\t\t\t\t\t\t\t</ul>\n\t\t\t\t\t\t</div>") . "\n </div>\n </div>\n</div>\n<div class=\"wrapper\">\n <div id='logo'>\n\t\t\t\t\t\t" . (ipsRegistry::$applications[$this->registry->getCurrentApplication()]['hasCustomHeader'] ? "\n\t\t\t\t\t\t\t" . (method_exists($this->registry->getClass('output')->getTemplate('' . $this->registry->getCurrentApplication() . '_global'), 'overwriteHeader') ? $this->registry->getClass('output')->getTemplate('' . $this->registry->getCurrentApplication() . '_global')->overwriteHeader() : '') . "\n\t\t\t\t\t\t" : "\n\t\t\t\t\t\t\t" . (method_exists($this->registry->getClass('output')->getTemplate('global'), 'defaultHeader') ? $this->registry->getClass('output')->getTemplate('global')->defaultHeader() : '') . "\n\t\t\t\t\t\t") . "\n\t\t\t\t\t</div>\n <div style=\"float: right; clear: both; margin-top: 66px;\">\n " . ($this->facebook_url ? "\n\t\t\t\t\t\t\t<a href=\"{$this->facebook_url}\" data-tooltip=\"{$this->facebook_title}\" target=\"_blank\"><img src=\"{style_images_url}/facebook.png\" alt=\"Facebook\" height=\"40\" width=\"40\"></a>\n\t\t\t\t\t" : "") . "" . ($this->twitter_name ? "\n\t\t\t\t\t\t\t<a href=\"http://twitter.com/{$this->twitter_name}\" data-tooltip=\"{$this->twitter_title}\" target=\"_blank\"><img src=\"{style_images_url}/twitter.png\" alt=\"Facebook\" height=\"40\" width=\"40\"></a>\n\t\t\t\t\t" : "") . "\n </div>\n</div>\n\t\t\t<div id=\"aud_wrapper\" class='main_width'>\n\t\t\t\t<!-- ::: BRANDING/NAV BAR: Logo and navigation menu ::: -->\n\t\t\t\t<div id='branding'>\n\t\t\t\t\t\n\t\t\t\t\t<!-- ::: APPLICATION TABS ::: -->\n\t\t\t\t\t\t<div id='primary_nav' class='clearfix right'>\n\t\t\t\t\t\t\t<ul class='ipsList_inline' id='community_app_menu'>\n\t\t\t\t\t\t\t\t" . (($this->settings['home_url'] and $this->settings['home_name']) ? "\n\t\t\t\t\t\t\t\t\t<li id='nav_home'><a href='{$this->settings['home_url']}' title='{$this->lang->words['homepage_title']}' rel=\"home\">{$this->settings['home_name']}</a></li>\n\t\t\t\t\t\t\t\t" : "") . "\n\t\t\t\t\t\t\t\t" . (!empty($header_items['primary_navigation_menu']) ? "\n\t\t\t\t\t\t\t\t\t{$header_items['primary_navigation_menu']}\n\t\t\t\t\t\t\t\t" : "" . ((is_array($header_items['applications']) and count($header_items['applications'])) ? "\n\t\t\t\t\t\t\t\t\t\t" . $this->__f__758c3640fe48bb04e47e743dc6faffdd($html, $documentHeadItems, $css, $jsModules, $metaTags, $header_items, $items, $footer_items, $stats) . "\t\t\t\t\t\t\t\t\t" : "") . "") . "\n\t\t\t\t\t\t\t\t<li id='nav_other_apps' style='display: none'>\n\t\t\t\t\t\t\t\t\t<a href='#' class='ipbmenu' id='more_apps'>{$this->lang->words['more_apps']} <img src='{$this->settings['img_url']}/dropdown.png' /></a>\n\t\t\t\t\t\t\t\t</li>\n\t\t\t\t\t\t\t</ul>\n<div class=\"g_12 separator\" style=\"margin-left: 22px;\"><span></span></div>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\n\t\t\t\t\t\t<script type='text/javascript'>\n\t\t\t\t\t\t\tif( \$('primary_nav') ){\tipb.global.activateMainMenu(); }\n\t\t\t\t\t\t</script>\n\t\t\t\t</div>\n\t\t\t\t<!-- ::: MAIN CONTENT AREA ::: -->\n\n\t\t\t\t<div id='content' class='clearfix'>\n\t\t\t\t\t<!-- ::: NAVIGATION BREADCRUMBS ::: -->\n\t\t\t\t\t" . (count($items['navigation']) ? "<div id='secondary_navigation' class='clearfix'>\n\t\t\t\t\t\t\t<ol class='breadcrumb top ipsList_inline left'>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t" . ((!$this->settings['remove_forums_nav'] or ipsRegistry::$current_application == 'forums') ? "<li itemscope itemtype=\"http://data-vocabulary.org/Breadcrumb\">\n\t\t\t\t\t\t\t\t\t\t<a href='" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("act=idx", "public", ''), "false", "") . "' itemprop=\"url\">\n\t\t\t\t\t\t\t\t\t\t\t<span itemprop=\"title\">{$this->settings['board_name']}</span>\n\t\t\t\t\t\t\t\t\t\t</a>\n\t\t\t\t\t\t\t\t\t</li>\n\t\t\t\t\t\t\t\t\t" . (($this->did_first = 1) ? "" : "") . "" : "") . "\n\t\t\t\t\t\t\t\t" . $this->__f__171a69a5fc28f509840cf15566243945($html, $documentHeadItems, $css, $jsModules, $metaTags, $header_items, $items, $footer_items, $stats) . "\t\t\t\t\t\t\t</ol>\n\t\t\t\t\t\t</div>" : "") . "" . ($this->show_global_messages == yes ? "<span style=\"margin-top: 5px; display: block;\"></span>" . (method_exists($this->registry->getClass('output')->getTemplate('global'), 'aud_announcements') ? $this->registry->getClass('output')->getTemplate('global')->aud_announcements() : '') . "" : "") . "\n\n\t\t\t\t\t<noscript>\n\t\t\t\t\t\t<div class='message error'>\n\t\t\t\t\t\t\t<strong>{$this->lang->words['gbl_no_js_title']}</strong>\n\t\t\t\t\t\t\t<p>{$this->lang->words['gbl_no_js']}</p>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t\t<br />\n\t\t\t\t\t</noscript>\n\t\t\t\t\t<!-- ::: CONTENT ::: -->\n\t\t\t\t\t" . ($items['adHeaderCode'] ? "\n\t\t\t\t\t\t<div class='ipsAd'>{$items['adHeaderCode']}</div>\n\t\t\t\t\t" : "") . "\n\t\t\t\t\t" . ($html ? "{$html}" : "") . "\n\t\t\t\t\t" . ($items['adFooterCode'] ? "\n\t\t\t\t\t\t<div class='ipsAd'>{$items['adFooterCode']}</div>\n\t\t\t\t\t" : "") . "\n\t\t\t\t</div>\n\t\t\t\n\t\t\t\t<!-- ::: FOOTER (Change skin, social links etc) ::: -->\n\t\t\t\t<div id='footer_utilities' class='clearfix clear'>\n\t\t\t\t\t<ul class='aud_list left'>\n\t\t\t\t\t\t" . ($this->enable_adstyler == yes ? "<li>\n\t\t\t\t\t\t\t<a id=\"sbOpen\" href=\"#\" data-tooltip=\"Theme Styler\"><img src=\"{style_images_url}/brush_icon.png\" alt=\"Theme styler\"></a>\n\t\t\t\t\t\t</li>" : "") . "\n\t\t\t\t\t\t" . (!$this->member->is_not_human ? "" . (($this->memberData['userAgentLocked'] and !$this->memberData['userAgentBypass']) ? "\n\t\t\t\t\t\t\t\t<li id='useragent_msg'>\n\t\t\t\t\t\t\t\t\t{$this->lang->words['skin_browser_set']} <a href='#' data-clicklaunch='changeSkin' data-skinid='unlockUserAgent'>{$this->lang->words['override_browser_theme']}</a>\n\t\t\t\t\t\t\t\t</li>\n\t\t\t\t\t\t\t" : "" . ($this->registry->output->isTouchDevice() ? "\n\t\t\t\t\t\t\t\t<li>\n\t\t\t\t\t\t\t\t\t<a href='#' data-clicklaunch='changeSkin' data-skinid='setAsMobile'>{$this->lang->words['set_mobile_theme']}</a>\n\t\t\t\t\t\t\t\t</li>\n\t\t\t\t\t\t\t" : "") . "\n\t\t\t\t\t\t\t\t" . (count($footer_items['skin_chooser']) > 1 ? "\n\t\t\t\t\t\t\t\t\t<li>\n\t\t\t\t\t\t\t\t\t\t<a rel=\"nofollow\" id='new_skin' href='#'>{$this->lang->words['change_theme']}</a>\t\t\t\n\t\t\t\t\t\t\t\t\t\t<ul id='new_skin_menucontent' class='ipbmenu_content with_checks' style='display: none'>\n\t\t\t\t\t\t\t\t\t\t\t" . $this->__f__ec09aa5f6024ece0cc832e649f62820e($html, $documentHeadItems, $css, $jsModules, $metaTags, $header_items, $items, $footer_items, $stats) . "\t\t\t\t\t\t\t\t\t\t</ul>\n\t\t\t\t\t\t\t\t\t</li>\n\t\t\t\t\t\t\t\t" : "") . "") . "" : "") . "\n\t\t\t\t\t\t\n\t\t\t\t\t\t" . (!$this->member->is_not_human && count($footer_items['lang_chooser']['options']) > 1 ? "\n\t\t\t\t\t\t\t<li>\n\t\t\t\t\t\t\t\t<a rel=\"nofollow\" href='#' id='new_language'>{$footer_items['lang_chooser']['default']}</a>\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t<ul id='new_language_menucontent' class='ipbmenu_content with_checks' style='display: none'>\n\t\t\t\t\t\t\t\t\t" . $this->__f__3c867bcfb1300de730709b3b53153eb4($html, $documentHeadItems, $css, $jsModules, $metaTags, $header_items, $items, $footer_items, $stats) . "\t\t\t\t\t\t\t\t</ul>\n\t\t\t\t\t\t\t</li>\n\t\t\t\t\t\t" : "") . "\n\t\t\t\t\t\t\n\t\t\t\t\t\t" . (!$this->member->is_not_human ? "\n\t\t\t\t\t\t\t<li>\n\t\t\t\t\t\t\t\t<a rel=\"nofollow\" id='mark_all_read' href=\"" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=forums&module=forums§ion=markasread&marktype=all&k={$this->member->form_hash}", "public", ''), "", "") . "\" title='{$this->lang->words['mark_all_as_read']}'>{$this->lang->words['mark_board_as_read']}</a>\n\t\t\t\t\t\t\t\t<ul id='mark_all_read_menucontent' class='ipbmenu_content' style='display: none'>\n\t\t\t\t\t\t\t\t\t" . $this->__f__fb5f156f8d7b2071393c16fed14ebfdd($html, $documentHeadItems, $css, $jsModules, $metaTags, $header_items, $items, $footer_items, $stats) . "\t\t\t\t\t\t\t\t\t<li>\n\t\t\t\t\t\t\t\t\t\t<a href=\"" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=forums&module=forums§ion=markasread&marktype=all&k={$this->member->form_hash}", "public", ''), "", "") . "\"><strong>{$this->lang->words['mark_all_as_read']}</strong></a>\n\t\t\t\t\t\t\t\t\t</li>\n\t\t\t\t\t\t\t\t</ul>\n\t\t\t\t\t\t\t</li>\n\t\t\t\t\t\t" : "") . "\n\t\t\t\t\t" . (($this->settings['gl_show'] and $this->settings['gl_title']) ? "<li class='ipsType_smaller'>\n\t\t\t\t\t\t\t<a href='" . ($this->settings['gl_link'] ? "{$this->settings['gl_link']}" : "" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=forums&module=extras&section=boardrules", "public", ''), "", "") . "") . "'>" . ($this->settings['gl_title'] ? "{$this->settings['gl_title']}" : "{$this->lang->words['board_rules']}") . "</a>" . ($this->settings['priv_title'] ? " · " : "") . "\n\t\t\t\t\t\t</li>" : "") . "\n\t\t\t\t\t\t<li>\n\t\t\t\t\t\t\t<a href=\"" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=core&module=help", "public", ''), "", "") . "\" title='{$this->lang->words['view_help']}' rel=\"help\" accesskey='6'>{$this->lang->words['sj_help']}</a>\n\t\t\t\t\t\t</li>\t\n\t\t\t\n\t\t\t\t\t</ul>\n\t\t\t\t<ul class=\"aud_list right\">\n\t\t\t\t\t<li>\n\t\t\t\t\t<a rel=\"nofollow\" href='#top' id='backtotop' data-tooltip='{$this->lang->words['go_to_top']}'></a>\n\t\t\t\t\t</li>\n\t\t\t\t</ul>\n\t\t\t\t\t<div class=\"footer_copyright\">\n<span class=\"copyright_row\">\n<span id=\"footer_links\" class=\"label\">\n <a href=\"/?page=Faq\">FAQ</a>\n | <a href=\"/?page=Terms\">Terms and Conditions</a>\n | <a href=\"" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=core&module=global&section=privacy", "public", ''), "false", "privacy") . "\">Privacy Policy</a>\n | <a href=\"/?page=Contact+Us\">Contact Us</a>\n </span>\n</span>\n\t<p id=\"copyright\">All Rights Reserved <a href=\"http://www.grabviews.com\">GrabViews.com</a> © 2013</p>\n</div>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t\t" . (($this->memberData['member_id'] and $this->settings['debug_level']) ? "<div id='ipsDebug_footer'>\n\t\t\t\t\t\t<strong>{$this->lang->words['time_now']}</strong> {$footer_items['time']}\n\t\t\t\t\t\t" . (($this->memberData['member_id'] and $this->memberData['last_visit']) ? "<strong>{$this->lang->words['you_last_visit']}</strong> " . IPSText::htmlspecialchars($this->registry->getClass('class_localization')->getDate($this->memberData['last_visit'], "short", 0)) . "" : "") . "\n\t\t\t\t\t\t<strong>{$this->lang->words['stat_exec']}</strong> {$stats['ex_time']} " . (is_float($stats['ex_time']) ? "{$this->lang->words['stats_sec']}" : "") . "\n\t\t\t\t\t\t<strong>{$this->lang->words['stat_load']}</strong> {$stats['server_load']}\n\t\t\t\t\t\t<strong>{$this->lang->words['stat_queries']}</strong> {$stats['queries']} " . (IPS_SQL_DEBUG_MODE ? "<a href='" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("{$this->settings['query_string_safe']}&debug=1", "public", ''), "", "") . "'>" : "") . "{$this->lang->words['stats_queries']}" . (IPS_SQL_DEBUG_MODE ? "</a>" : "") . "\n\t\t\t\t\t\t<strong>{$this->lang->words['stat_gzip']}</strong> {$stats['gzip_status']}\n\t\t\t\t\t</div>" : "") . "\n\t\t\t\t<div style=\"display:none;\">\n\t\t\t\t\t{$stats['task']}\n\t\t\t\t</div>\n\t\t\t\t" . ($this->settings['do_include_lightbox_real'] ? "\n\t\t\t\t\t" . (method_exists($this->registry->getClass('output')->getTemplate('global'), 'include_lightbox_real') ? $this->registry->getClass('output')->getTemplate('global')->include_lightbox_real() : '') . "\n\t\t\t\t" : "\n\t\t\t\t\t<script type=\"text/javascript\">\n\t\t\t\t\t\tipb.global.lightBoxIsOff();\n\t\t\t\t\t</script>\n\t\t\t\t") . "\n\t\t\t\t" . (!$this->memberData['member_id'] ? "" . (method_exists($this->registry->getClass('output')->getTemplate('global'), 'inlineLogin') ? $this->registry->getClass('output')->getTemplate('global')->inlineLogin() : '') . "" : "") . "\n\t\t\t</div>\n\t\t</div>\n\t\t\n\t\t<!--DEBUG_STATS-->\n\t\t<script type='text/javascript'>\n\t\t\tif( \$('primary_nav') ){\tipb.global.activateMainMenu(); }\n\t\t</script>\n\t\t" . (($this->settings['viglink_enabled'] and (!$this->settings['viglink_groups'] or IPSMember::isInGroup($this->memberData, explode(',', $this->settings['viglink_groups'])))) ? "<script type=\"text/javascript\">\n\t\t\t var vglnk = { api_url: '//api.viglink.com/api',\n\t\t\t key: '{$this->settings['viglink_api_key']}'" . ($this->settings['viglink_subid'] ? ",\n\t\t\t sub_id: '{$this->settings['sub_id']}'\n\t\t\t " : "") . "\n\t\t\t };\n\t\t\t\n\t\t\t (function(d, t) {\n\t\t\t var s = d.createElement(t); s.type = 'text/javascript'; s.async = true;\n\t\t\t s.src = ('https:' == document.location.protocol ? vglnk.api_url :\n\t\t\t '//cdn.viglink.com/api') + '/vglnk.js';\n\t\t\t var r = d.getElementsByTagName(t)[0]; r.parentNode.insertBefore(s, r);\n\t\t\t }(document, 'script'));\n\t\t\t</script>" : "") . "" . ($this->enable_adstyler == yes ? "\n\t\t<!-- Start styleBar -->\n\t\t<form id=\"styleBar\"></form>\n\t\t<!-- End styleBar -->\n\n\t\t<!-- Start styleBar js -->\n\t\t<script>\n\t\t\t(function( jQuery ) {\n\t\t\t\tjQuery( '#styleBar' ).styleBar( { overlay: true } );;\n\t\t\t})( jQuery );\n\t\t</script>\n\t\t<!-- end styleBar js -->\n\t\t" : "") . "\n\t\t\n\t\t<span class=\"mcolor\"></span>\n\t</body>\n</html>"; return $IPBHTML; }
function userCPTemplate($current_tab, $html, $tabs, $current_area, $errors = array(), $hide_form = 0, $maxUpload = 0) { $IPBHTML = ""; $IPBHTML .= "" . $this->registry->getClass('output')->addJSModule("ucp", "0") . "\n" . (IPSLib::fbc_enabled() === TRUE ? "<!-- SKINNOTE: This could be added dynamically by JS if this is too obtrusive. FB users need JS on, so no worries there -->\n\t" . ($this->registry->output->isHTTPS ? "\n\t\t<script src=\"https://ssl.connect.facebook.com/js/api_lib/v0.4/FeatureLoader.js.php\" type=\"text/javascript\"></script>\n\t" : "\n\t\t<script src=\"http://static.ak.connect.facebook.com/js/api_lib/v0.4/FeatureLoader.js.php\" type=\"text/javascript\"></script>\n\t") . "\t" . ((!$this->memberData['fb_emailallow'] and strstr($this->memberData['email'], '@proxymail.facebook.com')) ? "\n\t\t<div id='fbc_emailCheck' style='display:none'>\n\t\t\t<fb:prompt-permission perms=\"email\">\n\t\t\t\t<div class='message unspecific'>\n\t\t\t\t\t<strong>{$this->lang->words['cannot_get_email']}</strong>\n\t\t\t\t\t<br />\n\t\t\t\t\t{$this->lang->words['cannot_get_email_2']}\n\t\t\t\t\t<br />\n\t\t\t\t\t<u>{$this->lang->words['click_allow_email']}</u>\n\t\t\t\t</div>\n\t\t\t</fb:prompt-permission>\n\t\t\t<br />\n\t\t</div>\n\t\t<script type=\"text/javascript\">\n\t\t\t/* Init Facebook JS */\n\t\t\tFB_RequireFeatures([\"XFBML\"], function()\n\t\t\t{\n\t\t\t\tFB.init(\"{$this->settings['fbc_api_id']}\", \"{$this->settings['fbc_xdlocation']}\" );\n\t\t\t} );\n\t\t\t/* As the REST can take a short while, the div shows then hides; this delays it until its ready to show or hide */\n\t\t\tEvent.observe( window, 'load', function() { \$('fbc_emailCheck').show(); } );\n\t\t</script>\n\t" : "") . "" : "") . "\n" . ($hide_form == 0 ? "" . ($maxUpload ? "\n\t\t<form method='post' enctype=\"multipart/form-data\" action='{$this->settings['base_url']}app=core&module=usercp&tab={$current_tab}&area={$current_area}' id='userCPForm'>\n\t" : "\n\t\t<form method='post' action='{$this->settings['base_url']}app=core&module=usercp&tab={$current_tab}&area={$current_area}' id='userCPForm'>\n\t") . "" : "") . "\n\t<fieldset>\n\t\t<input type=\"hidden\" name=\"MAX_FILE_SIZE\" value=\"{$maxUpload}\" />\n\t\t<input type='hidden' name='do' value='save' />\n\t\t<input type='hidden' name='secure_hash' value='{$this->member->form_hash}' />\n\t\t<input type='hidden' name='s' value='{$this->request['s']}' />\n\t</fieldset>\n<h2>{$this->lang->words['ucp_title']}</h2>\n<ul class='tab_bar no_title'>\n\t" . $this->__f__d56c673e0548c7a8eeb9357cd58893d1($current_tab, $html, $tabs, $current_area, $errors, $hide_form, $maxUpload) . "</ul>\n<div class='tab_body usercp_body'>\n\t<ul id='usercp_menu'>\n\t\t" . ((is_array($tabs[$current_tab]['_menu']) and count($tabs[$current_tab]['_menu'])) ? "\n\t\t\t" . $this->__f__92e07c01d6df6f93f9677a030cfbd8a8($current_tab, $html, $tabs, $current_area, $errors, $hide_form, $maxUpload) . "\t\t" : "") . "\n\t</ul>\n\t<div id='usercp_content'>\n\t\t" . ((is_array($errors) and count($errors)) ? "\n\t\t\t<p class='message error'>\n\t\t\t\t" . $this->__f__7d6ff6cf778678bd847f6e4de3209156($current_tab, $html, $tabs, $current_area, $errors, $hide_form, $maxUpload) . "\t\t\t</p>\n\t\t" : "") . "\n\t\t" . ($this->request['saved'] == 1 ? "\n\t\t\t<p class='message'>{$this->lang->words['ucp__settings_saved']}</p>\n\t\t" : "") . "\n\t\t{$html}\n\t\t\n\t\t" . ($hide_form == 0 ? "\n\t\t<fieldset class='submit'>\n\t\t\t<input type='submit' class='input_submit' name='submit' value='{$this->lang->words['ucp__save_changes']}' /> {$this->lang->words['or']} <a href='" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=core&module=usercp&tab={$current_tab}&area={$current_area}", 'public', ''), "", "") . "' title='{$this->lang->words['cancel_edit']}' class='cancel'>{$this->lang->words['cancel']}</a>\n\t\t</fieldset>\n\t\t" : "") . "\n\t</div>\n</div>\n" . ($hide_form == 0 ? "\n</form>\n" : "") . ""; return $IPBHTML; }
function registerForm($general_errors = array(), $data = array(), $inline_errors = array(), $time_select = array(), $custom_fields = array()) { $IPBHTML = ""; $this->registry->templateStriping['register'] = array(FALSE, "row1", "row2"); $IPBHTML .= "" . $this->registry->getClass('output')->addJSModule("register", "0") . "\n" . $this->registry->getClass('output')->addJSModule("facebook", "0") . "\n<script type='text/javascript'>\n//<![CDATA[\n\tipb.register.inSection = \"mainform\";\n\tipb.register.nameMaxLength = \"{$this->settings['max_user_name_length']}\";\n\tipb.register.allowedChars = \"{$this->settings['username_characters']}\";\n\tipb.templates['accept'] = \" <span id='[id]_msg' class='reg_msg reg_accept' style='display: none'><img src='{$this->settings['img_url']}/accept.png' alt='{$this->lang->words['icon']}' /> [msg]</span>\";\n\tipb.templates['error'] = \" <span id='[id]_msg' class='reg_msg reg_error' style='display: none'><img src='{$this->settings['img_url']}/exclamation.png' alt='{$this->lang->words['icon']}' /> [msg]</span>\";\n//]]>\n</script>\n<!-- SKINNOTE TEMPORARY ERROR OUTPUT UNTIL RIKKI FIXES :) -->\n" . (is_array($general_errors) && count($general_errors) ? "\n<div class='message error'>\n\t{$this->lang->words['following_errors']}\n\t<ul>\n\t\t" . $this->__f__5b17498ae294375f6e2888bb373995eb($general_errors, $data, $inline_errors, $time_select, $custom_fields) . "\t</ul>\n</div>\n" : "") . "<form action=\"" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=core&module=global&section=register", 'public', ''), "", "") . "\" method=\"post\" name=\"REG\" id='register'>\n\t<input type=\"hidden\" name=\"termsread\" value=\"1\" />\n\t<input type=\"hidden\" name=\"agree_to_terms\" value=\"1\" />\n\t<input type=\"hidden\" name=\"do\" value=\"process_form\" />\n\t<input type=\"hidden\" name=\"coppa_user\" value=\"{$data['coppa_user']}\" />\n\t\n\t<div id='register_info' class='right general_box'>\n\t\t" . ($this->settings['fbc_api_id'] ? "\n\t\t\t<h3 class='bar'>{$this->lang->words['reg_with_facebook']}</h3>\n\t\t\t<p>\n\t\t\t\t<div id='fbUserBox'>\n\t\t\t\t\t{$this->lang->words['log_with_facebook']}\n\t\t\t\t\t<br />\n\t\t\t\t\t<fb:login-button size=\"medium\" background=\"light\" length=\"long\" onlogin=\"ipb.facebook.register_loadUser();\"></fb:login-button>\n\t\t\t\t</div>\n\t\t\t\t<br clear='both' />\n\t\t\t</p>\n\t\t\t<br />\n\t\t" : "") . "\n\t\n\t\t<h3>{$this->lang->words['why_register']}</h3>\n\t\t{$this->settings['register_page_info']}\n\t</div>\n\t<div id='register_form' class='block_wrap left'>\n\t\t<h2>{$this->lang->words['ready_register']}</h2>\n\t\t\n\t\t<p class='extra'>\n\t\t\t{$this->lang->words['reg_free']}\n\t\t\t<br />\n\t\t\t{$this->lang->words['already_account']} <a href='" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=core&module=global&section=login", 'public', ''), "", "") . "' title='{$this->lang->words['goto_signin']}'>{$this->lang->words['sign_in_page']}</a>\n\t\t\t<br />\n\t\t</p>\n\t\t" . (is_array($inline_errors) && ($inline_errors['username'] || $inline_errors['dname'] || $inline_errors['email'] || $inline_errors['password']) ? "\n\t\t\t<p class='message error'>{$this->lang->words['reg_errors_found']}</p>\t\n\t\t" : "") . "\n\t\t\n\t\t<div class='generic_bar'></div>\n\t\t<fieldset class='" . IPSLib::next($this->registry->templateStriping["register"]) . "'>\n\t\t\t<h3 class='bar'>{$this->lang->words['reg_step1']}</h3>\n\t\t\t\n\t\t\t<ul>\n\t\t\t\t" . ($data['requireName'] ? "<li class='field required " . ($inline_errors['username'] ? "error" : "") . "'>\n\t\t\t\t\t\t<label for='login_name'>{$this->lang->words['reg_choose_user']}</label>\n\t\t\t\t\t\t<input type='text' class='input_text' id='login_name' size='25' maxlength='{$this->settings['max_user_name_length']}' value='{$this->request['UserName']}' name='UserName' /><br />\n\t\t\t\t\t\t<span class='desc'>" . ($inline_errors['username'] ? "<span class='error'>{$inline_errors['username']}<br /></span>" : "") . "{$this->lang->words['char_cant_use']}</em></span>\n\t\t\t\t\t</li>" : "") . "\n\t\t\t\t" . (($this->settings['auth_allow_dnames'] == 1 or !$data['requireName']) ? "<li class='field required " . ($inline_errors['dname'] ? "error" : "") . "'>\n\t\t\t\t\t\t<label for='display_name'>{$this->lang->words['reg_choose_dname']}</label>\n\t\t\t\t\t\t<input type='text' class='input_text' id='display_name' size='25' maxlength='{$this->settings['max_user_name_length']}' value='{$this->request['members_display_name']}' name='members_display_name' /><br />\n\t\t\t\t\t\t<span class='desc'>" . ($inline_errors['dname'] ? "<span class='error'>{$inline_errors['dname']}<br /></span>" : "") . "{$this->lang->words['dname_desc_one']} {$this->settings['max_user_name_length']} {$this->lang->words['dname_desc_two']}</span>\n\t\t\t\t\t</li>" : "") . "\n\t\t\t</ul>\n\t\t\t<hr />\n\t\t\t<ul>\n\t\t\t\t<li class='field required " . ($inline_errors['email'] ? "error" : "") . "'>\n\t\t\t\t\t<label for='email_1'>{$this->lang->words['reg_enter_email']}</label>\n\t\t\t\t\t<input type='text' id='email_1' class='input_text email' size='25' maxlength='150' name='EmailAddress' value='{$this->request['EmailAddress']}' /><br />\n\t\t\t\t\t<span class='desc'>" . ($inline_errors['email'] ? "<span class='error'>{$inline_errors['email']}<br /></span>" : "") . "{$this->lang->words['reg_enter_email_desc']}</span>\n\t\t\t\t</li>\n\t\t\t\t<li class='field nodesc required'>\n\t\t\t\t\t<label for='email_2'>{$this->lang->words['reg_reenter_email']}</label>\n\t\t\t\t\t<input type='text' id='email_2' class='input_text email' size='25' maxlength='150' name='EmailAddress_two' value='{$this->request['EmailAddress_two']}' />\n\t\t\t\t</li>\n\t\t\t</ul>\n\t\t\t<hr />\n\t\t\t<ul>\n\t\t\t\t<li class='field required " . ($inline_errors['password'] ? "error" : "") . "'>\n\t\t\t\t\t<label for='password_1'>{$this->lang->words['reg_choose_password']}</label>\n\t\t\t\t\t<input type='password' id='password_1' class='input_text password' size='25' maxlength='32' value='{$this->request['PassWord']}' name='PassWord' /><br />\n\t\t\t\t\t<span class='desc'>" . ($inline_errors['password'] ? "<span class='error'>{$inline_errors['password']}<br /></span>" : "") . "{$this->lang->words['reg_choose_password_desc']}</span>\n\t\t\t\t</li>\n\t\t\t\t<li class='field nodesc required'>\n\t\t\t\t\t<label for='password_2'>{$this->lang->words['reg_reenter_password']}</label>\n\t\t\t\t\t<input type='password' id='password_2' class='input_text password' size='25' maxlength='32' value='{$this->request['PassWord_Check']}' name='PassWord_Check' /><br />\n\t\t\t\t</li>\n\t\t\t</ul>\n\t\t</fieldset>\n\t\t<fieldset class='" . IPSLib::next($this->registry->templateStriping["register"]) . "'>\n\t\t\t<h3 class='bar'>{$this->lang->words['reg_step2']}</h3>\n\t\t\t\n\t\t\t<ul>\n\t\t\t\t<li class='field checkbox'>\n\t\t\t\t\t<input type=\"checkbox\" name=\"allow_admin_mail\" id=\"allow_admin_mail\" value=\"1\" class=\"input_check\" " . ($this->request['allow_admin_mail'] || !isset($this->request['allow_admin_mail']) ? "checked='checked'" : "") . " />\n\t\t\t\t\t<label for='allow_admin_mail'>{$this->lang->words['receive_admin_emails']}</label>\n\t\t\t\t</li>\n\t\t\t\t<li class='field checkbox nodesc'>\n\t\t\t\t\t<input type=\"checkbox\" name=\"allow_member_mail\" id=\"allow_member_mail\" value=\"1\" class=\"input_check\" " . ($this->request['allow_member_mail'] ? "checked='checked'" : "") . " />\n\t\t\t\t\t<label for=\"allow_member_mail\">{$this->lang->words['receive_member_emails']}</label>\n\t\t\t\t</li>\n\t\t\t\t<li class='field'>\n\t\t\t\t\t<label for='timezone'>{$this->lang->words['time_zone']}</label>\n\t\t\t\t\t<select id='timezone' class='input_select' name='time_offset'>\n\t\t\t\t\t\t" . $this->__f__a3b8ffba08c0945e925e2f0127b9fdc2($general_errors, $data, $inline_errors, $time_select, $custom_fields) . "\t\t\t\t\t</select>\n\t\t\t\t</li>\n\t\t\t\t<li class='field checkbox'>\n\t\t\t\t\t<input type='checkbox' id='dst' name='dst' value='1' class='input_check' " . ($this->request['dst'] ? "checked='checked'" : "") . " /> <label for='dst' id='dst_label'>{$this->lang->words['auto_dst_detection']}</label>\n\t\t\t\t</li>\n\t\t\t</ul>\n\t\t</fieldset>\n\t\t" . (is_array($custom_fields['required']) && count($custom_fields['required']) || is_array($custom_fields['optional']) && count($custom_fields['optional']) ? "<fieldset class='" . IPSLib::next($this->registry->templateStriping["register"]) . "'>\n\t\t\t<h3 class='bar'>{$this->lang->words['reg_step3']}</h3>\n\t\t\t\n\t\t\t<ul>\n\t\t\t" . (is_array($custom_fields['required']) && count($custom_fields['required']) ? "\n\t\t\t\t" . $this->__f__36fcc0affb964a688761e1ed92abc6c7($general_errors, $data, $inline_errors, $time_select, $custom_fields) . "\t\t\t" : "") . "\n\t\t\t\n\t\t\t" . (is_array($custom_fields['optional']) && count($custom_fields['optional']) ? "\n\t\t\t\t" . $this->__f__c21d6e745dbee23939704485f1721779($general_errors, $data, $inline_errors, $time_select, $custom_fields) . "\t\t\t" : "") . "\n\t\t\t<!--{SUBS.MANAGER}-->\n\t\t\t<!--IBF.MODULES.EXTRA-->\n\t\t</fieldset>" : "") . "\n\t\t{$data['captchaHTML']}\n\t\t{$data['qandaHTML']}\n\t\t<fieldset class='submit'>\n\t\t\t<input type='submit' class='input_submit' value='{$this->lang->words['register']}' /> {$this->lang->words['or']} <a href='" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("", 'public', ''), "", "") . "' title='{$this->lang->words['cancel_link']}' class='cancel'>{$this->lang->words['cancel']}</a>\n\t\t</fieldset>\t\n\t</div>\n</form>\n<!--FB Template-->\n<div id='fb-template-main' style='display:none'>\n\t<div style='float:left; margin-right:4px;margin-bottom:3px'>\n\t\t<fb:profile-pic uid=loggedinuser facebook-logo=true></fb:profile-pic>\n\t</div>\n\t{$this->lang->words['fb_welcome']} <strong><fb:name uid=loggedinuser useyou=false></fb:name></strong>\n\t<div class='desc'>\n\t\t{$this->lang->words['fb_logged_in']}.\n\t\t<br clear='both'/>\n\t\t<br />\n\t\t{$this->lang->words['fb_reg_with']}\n\t\t<form action='{$this->settings['base_url']}app=core&module=global&section=login&do=fbc_loginWithNew' method='post' name='linkNewAccForm' id='fbc_linkNewAccForm'>\n\t\t\t<input type='button' class='input_submit' id='fbc_completeNewAcc' value='{$this->lang->words['fb_complete_reg']}' />\n\t\t</form>\n\t</div>\n</div>\n" . (IPSLib::fbc_enabled() === TRUE ? "\n<script src=\"http://static.ak.connect.facebook.com/js/api_lib/v0.4/FeatureLoader.js.php\" type=\"text/javascript\"></script>\n<script type=\"text/javascript\">\n\t/* Init Facebook JS */\n\ttry\n\t{\n\t\tFB_RequireFeatures([\"XFBML\"], function()\n\t\t{\n\t\t\tFB.init(\"{$this->settings['fbc_api_id']}\", \"{$this->settings['fbc_xdlocation']}\" );\n\t\t\tFB.Facebook.get_sessionState().waitUntilReady(function()\n\t\t\t{\n\t\t\t\tFB.Connect.ifUserConnected( ipb.facebook.register_loadUser );\n\t\t\t} );\n\t\t} );\n\t}\n\tcatch( error )\n\t{\n\t\t//alert( error );\n\t}\n</script>\n" : "") . ""; return $IPBHTML; }
function showLogInForm($message = "", $referer = "", $extra_form = "", $login_methods = array(), $facebookOpts = array()) { $IPBHTML = ""; $IPBHTML .= "" . $this->registry->getClass('output')->addJSModule("signin", "0") . "\n" . $this->registry->getClass('output')->addJSModule("facebook", "0") . "\n<div id='login_form' class='clear'>\n\t\n\t<div id='member_login' class='left'>\n\t\t<h2 class='maintitle'>{$this->lang->words['log_in']}</h2>\n\t\t<div class='generic_bar'></div>\n\t\t<form action=\"" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=core&module=global&section=login&do=process", 'public', ''), "", "") . "\" method=\"post\" id='login'>\n\t\t\t" . ($referer ? "\n\t\t\t<input type=\"hidden\" name=\"referer\" value=\"{$referer}\" />\n\t\t\t" : "") . "\n\t\t\t<div id='regular_signin'>\n\t\t\t\t<a id='_regularsignin'></a>\n\t\t\t\t<h3 class='bar'>{$this->lang->words['enter_name_and_pass']}</h3>\n\t\t\t\t<ul>\n\t\t\t\t\t<li class='field'>\n\t\t\t\t\t\t<label for='username'>{$this->lang->words['enter_name']}</label>\n\t\t\t\t\t\t<input id='username' type='text' class='input_text' name='username' size='25' />\n\t\t\t\t\t</li>\n\t\t\t\t\t<li class='field'>\n\t\t\t\t\t\t<label for='password'>{$this->lang->words['enter_pass']}</label>\n\t\t\t\t\t\t<input id='password' type='password' class='input_text' name='password' size='25' /><br />\n\t\t\t\t\t\t<a href='" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=core&module=global&section=lostpass", 'public', ''), "", "") . "' class='desc' title='{$this->lang->words['retrieve_pw']}'>{$this->lang->words['login_forgotten_pass']}</a>\n\t\t\t\t\t</li>\n\t\t\t\t</ul>\n\t\t\t\t" . (in_array('openid', $login_methods) ? "\n\t\t\t\t<p class='extra'>" . $this->registry->getClass('output')->getReplacement("openid_small") . " {$this->lang->words['have_openid']} <a href='#_openid' title='{$this->lang->words['use_openid']}' id='openid_open'>{$this->lang->words['sign_in_here']}</a></p>\n\t\t\t\t" : "") . "\n\t\t\t\t" . (in_array('live', $login_methods) ? "\n\t\t\t\t<p class='extra'>" . $this->registry->getClass('output')->getReplacement("live_small") . " {$this->lang->words['have_msnlive']} <a href='#_live' title='{$this->lang->words['use_live']}' id='live_open'>{$this->lang->words['sign_in_here']}</a></p>\n\t\t\t\t" : "") . "\n\t\t\t\t" . ((is_array($extra_form) and count($extra_form)) ? "\n\t\t\t\t\t" . $this->__f__a3616e8d38944a1bbf49ffe53e71834a($message, $referer, $extra_form, $login_methods, $facebookOpts) . "\t\t\t\t" : "") . "\n\t\t\t</div>\n\t\t\t" . (in_array('openid', $login_methods) ? "\n\t\t\t<div id='openid_signin'>\n\t\t\t\t<a id='_openid'></a>\n\t\t\t\t<h3 class='bar'>{$this->lang->words['sign_in_openid']}</h3>\n\t\t\t\t" . $this->registry->getClass('output')->getReplacement("openid_large") . "\n\t\t\t\t<ul>\n\t\t\t\t\t<li class='field'>\n\t\t\t\t\t\t<label for='openid'>{$this->lang->words['openid']}</label>\n\t\t\t\t\t\t<input id='openid' type='text' class='input_text' name='openid_url' value='http://' size='30' /><br />\n\t\t\t\t\t\t<span class='desc'>{$this->lang->words['openid_example']}</span>\n\t\t\t\t\t</li>\n\t\t\t\t</ul>\n\t\t\t\t<p class='extra'>" . $this->registry->getClass('output')->getReplacement("signin_icon") . " <a href='#_regularsignin' title='{$this->lang->words['regular_signin']}' id='openid_close'>{$this->lang->words['use_regular']}</a></p>\n\t\t\t</div>\n\t\t\t" : "") . "\n\t\t\t" . (in_array('live', $login_methods) ? "\n\t\t\t<div id='live_signin'>\n\t\t\t\t<a id='_live'></a>\n\t\t\t\t<h3 class='bar'>{$this->lang->words['sign_in_winlive']}</h3>\n\t\t\t\t<ul>\n\t\t\t\t\t<li class='field'>\n\t\t\t\t\t\t<a href='" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=core&module=global&section=login&do=process&use_live=1", 'public', ''), "", "") . "'>" . $this->registry->getClass('output')->getReplacement("live_large") . "</a> <a href='" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=core&module=global&section=login&do=process&use_live=1", 'public', ''), "", "") . "'>{$this->lang->words['signin_with_live']}</a>\n\t\t\t\t\t</li>\n\t\t\t\t</ul>\n\t\t\t\t<p class='extra'>" . $this->registry->getClass('output')->getReplacement("signin_icon") . " <a href='#_regularsignin' title='{$this->lang->words['regular_signin']}' id='live_close'>{$this->lang->words['use_regular']}</a></p>\n\t\t\t</div>\n\t\t\t" : "") . "\n\t\t\t<hr />\n\t\t\t<fieldset id='signin_options'>\n\t\t\t\t<legend>{$this->lang->words['sign_in_options']}</legend>\n\t\t\t\t<ul>\n\t\t\t\t\t<li class='field checkbox'>\n\t\t\t\t\t\t<input type='checkbox' id='remember' checked='checked' name='rememberMe' value='1' class='input_check' />\n\t\t\t\t\t\t<label for='remember'>\n\t\t\t\t\t\t\t{$this->lang->words['rememberme']}<br />\n\t\t\t\t\t\t\t<span class='desc'>{$this->lang->words['notrecommended']}</span>\n\t\t\t\t\t\t</label>\n\t\t\t\t\t</li>\n\t\t\t\t\t" . (!$this->settings['disable_anonymous'] ? "\n\t\t\t\t\t\t\n\t\t\t\t\t" : "") . "\n\t\t\t\t</ul>\n\t\t\t</fieldset>\n\t\t\t<fieldset class='submit'>\n\t\t\t\t<input type='submit' class='input_submit' value='{$this->lang->words['sign_in_button']}' /> {$this->lang->words['or']} <a href='" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("", 'public', ''), "", "") . "' title='{$this->lang->words['cancel']}' class='cancel'>{$this->lang->words['cancel']}</a>\n\t\t\t</fieldset>\n\t\t</form>\n\t</div>\n\t<div id='guest_register' class='right general_box'>\n\t\t" . (($this->settings['fbc_enable'] and $this->settings['fbc_api_id']) ? "\n\t\t\t<h3 class='bar'>{$this->lang->words['fb_login_title']}</h3>\n\t\t\t<p>\n\t\t\t\t<div id='fbUserBox'>\n\t\t\t\t\t{$this->lang->words['login_w_facebook']}\n\t\t\t\t\t<br />\n\t\t\t\t\t<fb:login-button size=\"medium\" background=\"light\" length=\"long\" onlogin=\"ipb.facebook.login_loadUser();\"></fb:login-button>\n\t\t\t\t</div>\n\t\t\t\t<br clear='both' />\n\t\t\t</p>\n\t\t\t<br />\n\t\t" : "") . "\n\t\t<h3 class='bar'>{$this->lang->words['not_a_member']}</h3>\n\t\t<p>\n\t\t\t{$this->settings['login_page_info']}\n\t\t</p>\n\t\t<br />\n\t\t<p style='text-align: center'>\n\t\t\t<a href='" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=core&module=global&section=register", 'public', ''), "", "section=register") . "'>{$this->lang->words['register_now']}</a>\n\t\t</p>\n\t</div>\n</div>\n<!--FB Template-->\n<div id='fb-template-main' style='display:none'>\n\t<div style='float:left; margin-right:4px;margin-bottom:3px'>\n\t\t<fb:profile-pic uid=loggedinuser facebook-logo=true></fb:profile-pic>\n\t</div>\n\t{$this->lang->words['welcome_prefix']} <strong><fb:name uid=loggedinuser useyou=false></fb:name></strong>\n</div>\n<div id='fb-template-notlinked' style='display:none'>\n\t<div class='desc'>\n\t\t{$this->lang->words['fb_logged_in']}\n\t\t<br clear='both'/>\n\t\t<br />{$this->lang->words['fb_no_forum_acct']}\n\t\t<br />\n\t\t<form action='{$this->settings['base_url']}app=core&module=global&section=login&do=fbc_loginWithNew' method='post' name='linkNewAccForm' id='fbc_linkNewAccForm'>\n\t\t\t<input type='button' class='input_submit' id='fbc_completeNewAcc' value='{$this->lang->words['fb_new_account']}' />\n\t\t</form>\n\t\t<br />\n\t\t<br />\n\t\t<strong>{$this->lang->words['or']}</strong> {$this->lang->words['fb_link_account']}\n\t\t<div class='message error' id='fbc_linkError' style='display:none'></div>\n\t\t<br />\n\t\t<form action='{$this->settings['base_url']}app=core&module=global&section=login&do=fbc_login' method='post' name='linkForm' id='fbc_linkForm'>\n\t\t{$this->lang->words['fb_link_email']} <input type='text' name='emailaddress' id='fbc_emailAddress' size='25' />\n\t\t<br />{$this->lang->words['fb_link_pass']} <input type='password' name='password' id='fbc_password' size='25' />\n\t\t<input type='button' class='input_submit' id='fbc_completeWithLink' value='{$this->lang->words['fb_link_complete']}' />\n\t\t</form>\n\t</div>\n</div>\n<div id='fb-template-linked' style='display:none'>\n\t<div class='desc'>\n\t\t{$this->lang->words['fb_logged_in']}\n\t</div>\n\t<br clear='both'/>\n\t<form action='{$this->settings['base_url']}app=core&module=global&section=login&do=fbc_loginFromLinked' method='post' name='linkAlreadyForm' id='fbc_linkAlreadyForm'>\n\t\t<input type='button' class='input_submit' id='fbc_complete' value='{$this->lang->words['fb_complete_login']}' />\n\t</form>\n</div>\n" . (IPSLib::fbc_enabled() === true ? "" . ($this->registry->output->isHTTPS ? "\n\t\t<script src=\"https://ssl.connect.facebook.com/js/api_lib/v0.4/FeatureLoader.js.php\" type=\"text/javascript\"></script>\n\t" : "\n\t\t<script src=\"http://static.ak.connect.facebook.com/js/api_lib/v0.4/FeatureLoader.js.php\" type=\"text/javascript\"></script>\n\t") . "\n<script type=\"text/javascript\">\n\t/* Init Facebook JS */\n\ttry\n\t{\n\t\tFB_RequireFeatures([\"XFBML\"], function()\n\t\t{\n\t\t\tFB.init(\"{$this->settings['fbc_api_id']}\", \"{$this->settings['fbc_xdlocation']}\" );\n\t\t\tFB.Facebook.get_sessionState().waitUntilReady(function()\n\t\t\t{\n\t\t\t\tFB.Connect.ifUserConnected( ipb.facebook.login_loadUser );\n\t\t\t} );\n\t\t} );\n\t}\n\tcatch( error )\n\t{\n\t\t//alert( error );\n\t}\n</script>" : "") . ""; return $IPBHTML; }
function statusUpdatesPage($updates = array(), $pages = '') { $IPBHTML = ""; if (IPSLib::locationHasHooks('skin_profile', $this->_funcHooks['statusUpdatesPage'])) { $count_b284dae10d4e778362b09ab9b5884953 = is_array($this->functionData['statusUpdatesPage']) ? count($this->functionData['statusUpdatesPage']) : 0; $this->functionData['statusUpdatesPage'][$count_b284dae10d4e778362b09ab9b5884953]['updates'] = $updates; $this->functionData['statusUpdatesPage'][$count_b284dae10d4e778362b09ab9b5884953]['pages'] = $pages; } $_first = reset($updates); if (!isset($this->registry->templateStriping['recent_status'])) { $this->registry->templateStriping['recent_status'] = array(FALSE, "row1", "row2 altrow"); } $IPBHTML .= "" . $this->registry->getClass('output')->addJSModule("status", "0") . "<h1 class='ipsType_pagetitle'>{$this->lang->words['status_updates__overview']}</h1>\n<br />\n<div id='status_standalone_page'>\n\t<div class='maintitle ipsFilterbar'>\n\t\t<ul class='ipsList_inline'>\n\t\t\t<li id='status_all' class='" . ((!$this->request['status_id'] and !$this->request['member_id'] and !$this->request['type'] or $this->request['type'] == 'all') ? "active" : "") . "'><a href='" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=members&module=profile&section=status&type=all", "public", ''), "true", "members_status_all") . "'>{$this->lang->words['status__all_updates']}</a></li>\n\t\t\t" . (($this->memberData['member_id'] and $this->settings['friends_enabled']) ? "<li id='status_all' class='tab_toggle " . ($this->request['type'] == 'friends' ? "active" : "") . "'><a href='" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=members&module=profile&section=status&type=friends", "public", ''), "true", "members_status_friends") . "'>{$this->lang->words['status__myfriends']}</a></li>" : "") . "" . ($this->request['member_id'] ? "\n\t\t\t\t<li id='status_by_id' class='active'><a href='" . $this->registry->getClass('output')->formatUrl($this->registry->getClass('output')->buildUrl("app=members&module=profile&section=status&type=memberall&member_id={$this->request['member_id']}", "public", ''), array($this->request['member_id'], $_first['members_seo_name']), "members_status_member_all") . "'>{$this->lang->words['status__membersupdats']}</a></li>\n\t\t\t" : "") . "" . ($this->request['status_id'] ? "\n\t\t\t\t<li id='status_by_sid' class='active'><a href='#'>{$this->lang->words['status__singleupdate']}</a></li>\n\t\t\t" : "") . "\n\t\t</ul>\n\t</div>\n\t" . (($this->memberData['member_id'] and $this->registry->getClass('memberStatus')->canCreate($this->memberData)) ? "<div class='status_update row2'>\n\t\t\t<form id='statusForm' action='{$this->settings['base_url']}app=members&module=profile&section=status&do=new&k={$this->member->form_hash}&id={$this->memberData['member_id']}' method='post'>\n\t\t\t<input type='text' id='statusUpdate_page' name='content' style='width:60%' class='input_text'> <input type='submit' class='ipsButton' id='statusSubmit_page' value='{$this->lang->words['gbl_post']}' />\n\t\t\t" . (((IPSLib::twitter_enabled() or IPSLib::fbc_enabled()) and ($this->memberData['fb_uid'] or $this->memberData['twitter_id'])) ? "<p class='desc' style='padding-top:5px;'>{$this->lang->words['st_update']}\n\t\t\t\t\t" . ((IPSLib::twitter_enabled() and $this->memberData['twitter_id']) ? "<input type='checkbox' id='su_Twitter' value='1' name='su_Twitter' /> <img src=\"{$this->settings['public_dir']}style_status/twitter.png\" style='vertical-align:top' alt='' />" : "") . "\n\t\t\t\t\t" . ((IPSLib::fbc_enabled() and $this->memberData['fb_uid']) ? "<input type='checkbox' id='su_Facebook' value='1' name='su_Facebook' /> <img src=\"{$this->settings['public_dir']}style_status/facebook.png\" style='vertical-align:top' alt='' />" : "") . "\n\t\t\t\t</p>" : "") . "\n\t\t\t</form>\n\t\t</div>" : "") . "\n\t<div id=\"status_wrapper\" class='ipsBox'>\n\t\t" . (count($updates) ? "\n\t\t\t" . (method_exists($this->registry->getClass('output')->getTemplate('profile'), 'statusUpdates') ? $this->registry->getClass('output')->getTemplate('profile')->statusUpdates($updates) : '') . "\n\t\t" : "\n\t\t\t<p class='no-status'>{$this->lang->words['status_updates_none']}</p>\n\t\t") . "\n\t</div>\n\t" . ($pages ? "\n\t\t<div class='topic_controls clearfix'>\n\t\t\t{$pages}\n\t\t</div>\n\t" : "") . "\n</div>"; return $IPBHTML; }
function hookFacebookActivity() { $IPBHTML = ""; if (IPSLib::locationHasHooks('skin_boards', $this->_funcHooks['hookFacebookActivity'])) { $count_a56e3d36117d91564594c2642b33b42e = is_array($this->functionData['hookFacebookActivity']) ? count($this->functionData['hookFacebookActivity']) : 0; } $IPBHTML .= "" . (IPSLib::fbc_enabled() ? "\r\n<div class='general_box clearfix'>\r\n\t<h3>{$this->lang->words['hook_facebookactivity']}</h3>\r\n\t<div class='block_list clearfix _sbcollapsable'>\r\n\t\t<div><fb:activity site=\"\" width=\"270\" height=\"300\" header=\"false\" border_color=\"#FFF\" colorscheme=\"light\" /></div>\r\n\t</div>\r\n</div><div id=\"fb-root\"></div>\r\n<script>\r\n window.fbAsyncInit = function() {\r\n FB.init({appId: '{$this->settings['fbc_appid']}', status: true, cookie: true,\r\n xfbml: true});\r\n };\r\n (function() {\r\n var e = document.createElement('script'); e.async = true;\r\n e.src = document.location.protocol +\r\n '//connect.facebook.net/{$this->settings['fb_locale']}/all.js';\r\n document.getElementById('fb-root').appendChild(e);\r\n }());\r\n</script>\r\n" : "") . ""; return $IPBHTML; }
/** * Determines if we can share socially or not * @param string $method (If false, it'll check all services and return true of one or more allow it) facebook/twitter * @param array $memberData */ public static function canSocialShare($method = false, $memberData = null) { $memberData = $memberData === null ? ipsRegistry::member()->fetchMemberData() : $memberData; if ($method == false) { $method = array('twitter', 'facebook'); } else { if (is_string($method)) { $method = array($method); } } $canShare = false; if (is_array($method)) { foreach ($method as $s) { switch ($s) { case 'twitter': $canShare = (IPSLib::twitter_enabled() and $memberData['twitter_token']) ? true : false; break; case 'facebook': $canShare = (IPSLib::fbc_enabled() and $memberData['fb_token']) ? true : false; break; } if ($canShare === true) { return true; } } } return $canShare; }
/** * Main class entry point * * @access public * @param object ipsRegistry reference * @return void [Outputs to screen] */ public function doExecute(ipsRegistry $registry) { //----------------------------------------- // INIT //----------------------------------------- $_thisNav = array(); //----------------------------------------- // Load language //----------------------------------------- $this->registry->getClass('class_localization')->loadLanguageFile(array('public_usercp')); //----------------------------------------- // Logged in? //----------------------------------------- if (!$this->memberData['member_id']) { $this->registry->getClass('output')->silentRedirect($this->settings['base_url'] . '&app=core&module=global§ion=login&do=form'); exit; } //----------------------------------------- // Make sure they're clean //----------------------------------------- $this->request['tab'] = IPSText::alphanumericalClean($this->request['tab']); $this->request['area'] = IPSText::alphanumericalClean($this->request['area']); //----------------------------------------- // Set up some basics... //----------------------------------------- $_TAB = $this->request['tab'] ? $this->request['tab'] : 'core'; $_AREA = $this->request['area'] ? $this->request['area'] : 'settings'; $_DO = $this->request['do'] ? $this->request['do'] : 'show'; $_FUNC = $_DO == 'show' ? 'showForm' : ($_DO == 'save' ? 'saveForm' : $_DO); $tabs = array(); $errors = array(); //----------------------------------------- // Got a plug in? //----------------------------------------- require_once IPS_ROOT_PATH . 'sources/interfaces/interface_usercp.php'; $_FILE = IPSLib::getAppDir($_TAB) . '/extensions/usercpForms.php'; $_CLASS = 'usercpForms_' . $_TAB; if (!file_exists($_FILE)) { $this->registry->getClass('output')->showError('usercp_bad_tab', 10147); exit; } //----------------------------------------- // Grab tabs //----------------------------------------- foreach (ipsRegistry::$applications as $app_dir => $app_data) { if (IPSLib::appIsInstalled($app_dir)) { $__file = IPSLib::getAppDir($app_dir) . '/extensions/usercpForms.php'; $__class = 'usercpForms_' . $app_dir; if (file_exists($__file)) { require_once $__file; $_usercp_module = new $__class(); $_usercp_module->makeRegistryShortcuts($this->registry); if (is_callable(array($_usercp_module, 'init'))) { $_usercp_module->init(); /* Set default area? */ if ($_TAB == $app_dir and !isset($_REQUEST['area'])) { if (isset($_usercp_module->defaultAreaCode)) { $this->request['area'] = $_AREA = $_usercp_module->defaultAreaCode; } } } if (is_callable(array($_usercp_module, 'getLinks'))) { $tabs[$app_dir]['_name'] = $_usercp_module->tab_name ? $_usercp_module->tab_name : IPSLib::getAppTitle($app_dir); $tabs[$app_dir]['_menu'] = $_usercp_module->getLinks(); if (!$tabs[$app_dir]['_menu']) { unset($tabs[$app_dir]); } /* Add in 'last' element */ $tabs[$app_dir]['_menu'][count($tabs[$app_dir]['_menu']) - 1]['last'] = 1; /* This nav? */ if (!count($_thisNav) and $app_dir == $_TAB) { foreach ($tabs[$app_dir]['_menu'] as $_navData) { if ($_navData['url'] == 'area=' . $_AREA) { $_thisNav = array('app=core&module=usercp&tab=' . $_TAB . '&area=' . $_AREA, $_navData['title']); } } } } } } } //----------------------------------------- // Set up basic navigation //----------------------------------------- $this->_nav[] = array($this->lang->words['t_title'], '&app=core&module=usercp'); if (isset($_thisNav[0])) { $this->_nav[] = array($_thisNav[1], $_thisNav[0]); } //----------------------------------------- // Load it... //----------------------------------------- require_once $_FILE; $usercp_module = new $_CLASS(); $usercp_module->makeRegistryShortcuts($this->registry); $usercp_module->init(); if ($_DO == 'saveForm' || $_DO == 'showForm' and !is_callable(array($usercp_module, $_FUNC))) { $this->registry->getClass('output')->showError('usercp_bad_tab', 10148, true); exit; } //----------------------------------------- // Run it... //----------------------------------------- if ($_FUNC == 'showForm') { //----------------------------------------- // Facebook email //----------------------------------------- //@facebook concession if (IPSLib::fbc_enabled() === TRUE) { if (!$this->memberData['fb_emailallow'] and strstr($this->memberData['email'], '@proxymail.facebook.com')) { require_once IPS_ROOT_PATH . 'sources/classes/facebook/connect.php'; $fb = new facebook_connect($this->registry); try { $fb->testConnectSession(); $result = $fb->users_hasAppPermission('email'); IPSMember::save($this->memberData['member_id'], array('core' => array('fb_emailallow' => intval($result)))); } catch (Exception $error) { } } } $html = $usercp_module->showForm($_AREA); } else { if ($_FUNC == 'saveForm') { //----------------------------------------- // Check secure key... //----------------------------------------- if ($this->request['secure_hash'] != $this->member->form_hash) { $html = $usercp_module->showForm($_AREA); $errors[] = $this->lang->words['securehash_not_secure']; } else { $errors = $usercp_module->saveForm($_AREA); $do = $usercp_module->do_url ? $usercp_module->do_url : 'show'; if (is_array($errors) and count($errors)) { $html = $usercp_module->showForm($_AREA, $errors); } else { if ($usercp_module->ok_message) { $this->registry->getClass('output')->redirectScreen($usercp_module->ok_message, $this->settings['base_url'] . 'app=' . IPS_APP_COMPONENT . '&module=usercp&tab=' . $_TAB . '&area=' . $_AREA . '&do=' . $do . '&saved=1', 1); } else { $this->registry->getClass('output')->silentRedirect($this->settings['base_url_with_app'] . 'module=usercp&tab=' . $_TAB . '&area=' . $_AREA . '&do=' . $do . '&saved=1' . '&_r=' . time()); } } } } else { if (!is_callable(array($usercp_module, 'runCustomEvent'))) { $html = $usercp_module->showForm($_AREA); $errors[] = $this->lang->words['called_invalid_function']; } else { $html = $usercp_module->runCustomEvent($_AREA); } } } //----------------------------------------- // If you've run a custom event, may need to // reset the "area" to highlight the menu correctly //----------------------------------------- if (is_callable(array($usercp_module, 'resetArea'))) { $_AREA = $usercp_module->resetArea($_AREA); } //----------------------------------------- // Wrap form and show //----------------------------------------- $template = $this->registry->getClass('output')->getTemplate('ucp')->userCPTemplate($_TAB, $html, $tabs, $_AREA, $errors, $usercp_module->hide_form_and_save_button, $usercp_module->uploadFormMax); //----------------------------------------- // Pass to CP output hander //----------------------------------------- $this->registry->getClass('output')->setTitle($this->_pageTitle ? $this->settings['board_name'] . " {$this->lang->words['pagetitle_bit']} : " . $this->_pageTitle : $this->settings['board_name'] . " {$this->lang->words['pagetitle_bit']}"); $this->registry->getClass('output')->addContent($template); if (is_array($this->_nav) and count($this->_nav)) { foreach ($this->_nav as $_nav) { $this->registry->getClass('output')->addNavigation($_nav[0], $_nav[1]); } } if (is_array($usercp_module->_nav) and count($usercp_module->_nav)) { foreach ($usercp_module->_nav as $_nav) { $this->registry->getClass('output')->addNavigation($_nav[0], $_nav[1]); } } $this->registry->getClass('output')->sendOutput(); }
/** * Returns the editor for viewing ... * @param unknown_type $member */ public function getEditorHtml(array $member) { /* Fetch member data */ $member = IPSMember::buildDisplayData(IPSMember::load($member['member_id'], 'all')); $p_w = ""; $p_h = ""; $cur_photo = ""; $rand = urlencode(microtime()); $data = array('currentPhoto' => array('tag' => ''), 'custom' => array('tag' => ''), 'gravatar' => array('tag' => ''), 'twitter' => array('tag' => '')); /* Photo type */ $data['type'] = $member['pp_photo_type'] = $this->getPhotoType($member); /* Got gravatar? */ $member['pp_gravatar'] = $member['pp_gravatar'] ? $member['pp_gravatar'] : $member['email']; /* Quick permission check */ if (!IPSMember::canUploadPhoto($member, TRUE)) { return false; } /* Set the current photo */ $data['currentPhoto']['tag'] = IPSMember::buildProfilePhoto($member, 'full', IPS_MEMBER_PHOTO_NO_CACHE); /* Set up custom */ $data['custom']['tag'] = $member['pp_photo_type'] != 'custom' ? IPSMember::buildNoPhoto($member, 'thumb', false, true) : "<img src='" . $member['pp_thumb_photo'] . '?__rand=' . $rand . "' width='" . $member['pp_thumb_width'] . "' height='" . $member['pp_thumb_height'] . "' />"; /* Set up Gravatar */ $data['gravatar']['tag'] = "<img src='http://www.gravatar.com/avatar/" . md5($member['pp_gravatar']) . "?s=100' alt='' />"; /* Twitter linked? */ if (IPSLib::twitter_enabled() && $member['twitter_token'] && $member['twitter_secret']) { $classToLoad = IPSLib::loadLibrary(IPS_ROOT_PATH . 'sources/classes/twitter/connect.php', 'twitter_connect'); $twitter = new $classToLoad($this->registry, $member['twitter_token'], $member['twitter_secret']); $userData = $twitter->fetchUserData(); if ($userData['profile_image_url']) { $data['twitter']['tag'] = "<img src='" . str_replace('_normal.', '.', $userData['profile_image_url']) . "' />"; } } /* Facebook linked? */ if (IPSLib::fbc_enabled() && $member['fb_uid']) { $classToLoad = IPSLib::loadLibrary(IPS_ROOT_PATH . 'sources/classes/facebook/connect.php', 'facebook_connect'); $facebook = new $classToLoad($this->registry); /* Now get the linked user */ $linkedMemberData = IPSMember::load(intval($member['fb_uid']), 'all', 'fb_uid'); $userData = $facebook->fetchUserData(); if ($userData['pic_big']) { $data['facebook']['tag'] = "<img src='" . $userData['pic_big'] . "' />"; } else { if ($userData['pic']) { $data['facebook']['tag'] = "<img src='" . $userData['pic'] . "' />"; } } } $this->uploadFormMax = 5000 * 1024; return $this->registry->getClass('output')->getTemplate('profile')->photoEditor($data, $member); }
/** * Show the login form * * @access public * @param string Message to show on login form * @return string Login form HTML */ public function loginForm($message = "", $replacement = '') { //----------------------------------------- // INIT //----------------------------------------- $extra_form = ""; $show_form = 1; $template = ''; //----------------------------------------- // Are they banned? //----------------------------------------- if (IPSMember::isBanned('ip', $this->member->ip_address)) { $this->registry->getClass('output')->showError('you_are_banned', 2011); } if ($message != "") { if ($replacement) { $message = sprintf($this->lang->words[$message], $replacement); } else { $message = $this->lang->words[$message]; } $name = $this->request['UserName'] ? $this->request['UserName'] : $this->request['address']; $message = str_replace("<#NAME#>", "<b>" . $name . "</b>", $message); $template .= $this->registry->getClass('output')->getTemplate('login')->errors($message); } //----------------------------------------- // Using an alternate log in form? //----------------------------------------- $this->han_login->checkLoginUrlRedirect(); //----------------------------------------- // Extra HTML? //----------------------------------------- $additionalForm = $this->han_login->additionalFormHTML(); if (count($additionalForm[1])) { if ($additionalForm[0] == 'add') { $extra_form = $additionalForm[1]; $show_form = 1; } else { $template .= $additionalForm[1]; $show_form = 0; } } //----------------------------------------- // Continue... //----------------------------------------- if ($show_form) { if ($this->request['referer']) { $http_referrer = $this->request['referer']; } else { if (!my_getenv('HTTP_REFERER') or stripos(my_getenv('HTTP_REFERER'), $this->settings['board_url']) === false) { // HTTP_REFERER isn't set when force_login is enabled // This method will piece together the base url, and the querystring arguments // This is not anymore secure/insecure than IPB, as IPB will have to process // those arguments whether force_login is enabled or not. $argv = is_array(my_getenv('argv')) && count(my_getenv('argv')) > 0 ? my_getenv('argv') : array(); $http_referrer = $this->settings['base_url'] . @implode("&", $argv); } else { $http_referrer = my_getenv('HTTP_REFERER'); } } $facebookOpts = array(); $login_methods = false; $uses_name = false; $uses_email = false; foreach ($this->cache->getCache('login_methods') as $method) { $login_methods[$method['login_folder_name']] = $method['login_folder_name']; if ($method['login_user_id'] == 'username') { $uses_name = true; } if ($method['login_user_id'] == 'email') { $uses_email = true; } } if ($uses_name and $uses_email) { $this->lang->words['enter_name'] = $this->lang->words['enter_name_and_email']; } else { if ($uses_email) { $this->lang->words['enter_name'] = $this->lang->words['enter_useremail']; } else { $this->lang->words['enter_name'] = $this->lang->words['enter_username']; } } $template .= $this->registry->getClass('output')->getTemplate('login')->showLogInForm($this->lang->words['please_log_in'], htmlentities(urldecode($http_referrer)), $extra_form, $login_methods, $facebookOpts); } /* Work around for bug http://bugs.developers.facebook.com/show_bug.cgi?id=3237 */ if (IPSLib::fbc_enabled()) { $this->_facebook->testConnectSession(); } $this->registry->getClass('output')->addNavigation($this->lang->words['log_in'], ''); $this->registry->getClass('output')->setTitle($this->lang->words['log_in']); $this->registry->getClass('output')->addContent($template); $this->registry->getClass('output')->sendOutput(); }