Advertisement
Vodkaholic

Untitled

Jun 14th, 2011
187
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 19.06 KB | None | 0 0
  1. <?php
  2. /**
  3. * Description: A mashup of Default, Dancosplays, the interface on qwebirc, and
  4. * some other sites, packaged in a light blue color.
  5. */
  6.  
  7. require_once "themes/lite/bridge.class.php";
  8.  
  9. class Layout {
  10. /**
  11. * turns the Page into HTML
  12. */
  13. public function display_page(Page $page) {
  14. global $config, $user;
  15.  
  16.  
  17. $bridge = Bridge::getInstance();
  18.  
  19. $theme_name = $config->get_string('theme', 'lite');
  20. $site_name = $config->get_string('title');
  21. $data_href = get_base_href();
  22. $contact_link = $config->get_string('contact_link');
  23.  
  24. $header_html = "";
  25. foreach($page->headers as $line) {
  26. $header_html .= "\t\t$line\n";
  27. }
  28.  
  29. $left_block_html = "";
  30. $main_block_html = "";
  31. $sub_block_html = "";
  32. $user_block_html = "";
  33.  
  34. foreach($page->blocks as $block) {
  35. switch($block->section) {
  36. case "left":
  37. $left_block_html .= $this->block_to_html($block, true, "left");
  38. break;
  39. case "main":
  40. $main_block_html .= $this->block_to_html($block, false, "main");
  41. break;
  42. case "user":
  43. $user_block_html .= $block->body;
  44. break;
  45. case "subheading":
  46. $sub_block_html .= $this->block_to_html($block, false, "main");
  47. break;
  48. default:
  49. print "<p>error: {$block->header} using an unknown section ({$block->section})";
  50. break;
  51. }
  52. }
  53.  
  54. $debug = get_debug_info();
  55.  
  56. $contact = empty($contact_link) ? "" : "<br><a href='$contact_link'>Contact</a>";
  57. $subheading = empty($page->subheading) ? "" : "<div id='subtitle'>{$page->subheading}</div>";
  58.  
  59. $wrapper = "";
  60. if(strlen($page->heading) > 100) {
  61. $wrapper = ' style="height: 3em; overflow: auto;"';
  62. }
  63. if($page->left_enabled==false) {
  64. $left_block_html = "";
  65. $main_block_html = "<div id='body_noleft'>$main_block_html</div>";
  66. } else {
  67. $left_block_html = "<div id='nav69'>$left_block_html</div>";
  68. $main_block_html = "<div id='body'>$main_block_html</div>";
  69. }
  70. /*
  71. $controllerResponse = new XenForo_ControllerResponse_View();
  72. $controllerResponse->controllerName = 'XenForo_ControllerPublic_Index';
  73. $controllerResponse->controllerAction = $_SERVER['PHP_SELF'];
  74.  
  75. $containerParams = Dark_AzuCloud_EventListener_FrontControllerPreView::listen(new XenForo_FrontController($bridge->_dependencies), $controllerResponse, new XenForo_ViewRenderer_Abstract(), array());
  76. Zend_Debug::dump($containerParams);
  77. */
  78.  
  79. $loginBar = $bridge->renderTemplate('dark_header_login');
  80. //$navigation = $bridge->renderTemplate('navigation');
  81. $loginForm = $bridge->renderTemplate('dark_login_form');
  82. $jsBody = $bridge->renderTemplate('page_container_js_body');
  83. $jsBody = str_replace("/*<!--XenForo_Required_Scripts-->*/", '"node_list":true,"node_category":true,"node_forum":true,"sidebar_share_page":true,"lnblog_sidebar_recent_entry":true,"user_bar":true,"dark_azucloud":true', $jsBody);
  84.  
  85. $loginBar = str_replace("href=\"", "href=\"", $loginBar);
  86.  
  87. print <<<EOD
  88. <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
  89. <html lang="en-US" id="XenForo" class="Public LoggedOut" xmlns:fb="http://www.facebook.com/2008/fbml"><head>
  90. <meta charset="utf-8">
  91. <base href="http://animelon.com" />
  92. <title>{$page->title}</title>
  93. <noscript><style type="text/css">.JsOnly { display: none !important; }</style></noscript>
  94. <link rel="stylesheet" type="text/css" href="css.php?css=xenforo,form,public&amp;style=27&amp;d=1307524132" />
  95. <link rel="stylesheet" type="text/css" href="css.php?css=dark_azucloud,node_category,node_forum,node_list,sidebar_share_page,user_bar,wf_default&amp;style=27&amp;d=1307524132" />
  96. <link rel="stylesheet" type="text/css" href="css.php?css=xenforo,form,public&amp;style=27&amp;d=1307524132" />
  97. <link rel="stylesheet" type="text/css" href="css.php?css=dark_azucloud,facebook,login_bar,node_category,node_forum,node_list,sidebar_share_page,wf_default&amp;style=27&amp;d=1307524132" />
  98.  
  99. <link rel="stylesheet" href="$data_href/themes/$theme_name/style.css" type="text/css">
  100. <link href="feeds/" title="global feed" type="application/rss+xml" rel="alternate">
  101.  
  102. <!--[if IE]>
  103. <link rel="stylesheet" type="text/css" href="css.php?css=internetexplorer&amp;style=27&amp;d=1307524132" />
  104. <![endif]-->
  105.  
  106. <script type="text/javascript">
  107. <!--
  108. var _gaq = [['_setAccount', 'UA-21610822-1'], ['_trackPageview']];
  109. !function(d, t)
  110. {
  111. var g = d.createElement(t),
  112. s = d.getElementsByTagName(t)[0];
  113. g.async = true;
  114. g.src = ('https:' == d.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
  115. s.parentNode.insertBefore(g, s);
  116. }
  117. (document, 'script');
  118. //-->
  119. </script>
  120. <script type="text/javascript" src="js/jquery/jquery-1.4.4.min.js"></script>
  121.  
  122. <script type="text/javascript" src="js/misc.js"></script>
  123. <script type="text/javascript" src="js/jquery/jquery.xenforo.rollup.js?_v=8f4ca5ad"></script>
  124. <script type="text/javascript" src="js/xenforo/xenforo.js?_v=8f4ca5ad"></script>
  125. <script data-cfasync="true" src="/javascript.js"></script>
  126.  
  127.  
  128.  
  129. <script type="text/javascript">
  130. function Bookmark()
  131. {
  132. var success=false;
  133.  
  134. // try each until all fail...
  135. try {
  136. window.external.AddFavorite(window.location, document.title);
  137. success=true;
  138. } catch(e) {}
  139.  
  140. try {
  141. window.sidebar.addPanel(document.title,location.href,'');
  142. success=true;
  143. } catch(e) {}
  144.  
  145. if(!success)
  146. {
  147. alert("AUTO BOOKMKARING not supported\r\nIn your current browser.\r\n\r\nPress CTRL+D, or CMD+D\r\nto manually bookmark this page.");
  148. }
  149. }
  150. </script>
  151.  
  152. $header_html
  153.  
  154. </head><body>
  155.  
  156. $loginBar
  157.  
  158. <div id="headerMover">
  159. <div id="headerProxy"></div>
  160. <div class="cosplays" id="content">
  161. <div class="pageWidth">
  162. <div class="pageContent1">
  163. <div class="mainContainer">
  164. <div class="mainContent">
  165. <div class="breadBoxTop">
  166. <div class="topCtrl">
  167. <a id="addStream" class="callToAction" href="cosplays/rss/images/">
  168. <span>Feed</span>
  169. </a>
  170. </div>
  171. <nav>
  172. <fieldset class="breadcrumb">
  173. <a title="Open quick navigation" data-cacheoverlay="true" class="OverlayTrigger jumpMenuTrigger" href="/misc/quick-navigation-menu"><!--Jump to...--></a>
  174. <div class="boardTitle"><strong>Animelon</strong></div>
  175. <span class="crumbs">
  176. <span itemtype="http://data-vocabulary.org/Breadcrumb" itemscope="itemscope" class="crust">
  177. <a itemprop="url" rel="up" class="crumb" href="http://animelon.com/"><span itemprop="title">Home</span></a>
  178. <span class="arrow"><span></span></span>
  179. </span>
  180. <span itemtype="http://data-vocabulary.org/Breadcrumb" itemscope="itemscope" class="crust">
  181. <a itemprop="url" rel="up" class="crumb" href=""><span itemprop="title">cosplays</span></a>
  182. <span class="arrow"><span>&gt;</span></span>
  183. </span>
  184. </span>
  185. </fieldset>
  186. </nav>
  187. </div>
  188. <!-- h1 title, description -->
  189. <div class="titleBar">
  190. <h1></h1>
  191. </div>
  192.  
  193. $sub_block_html
  194.  
  195. $main_block_html
  196.  
  197. </div>
  198.  
  199. $loginForm
  200.  
  201. </div>
  202. $left_block_html
  203. <div class="breadBoxBottom">
  204.  
  205. <nav>
  206.  
  207. <fieldset class="breadcrumb">
  208. <a href="/misc/quick-navigation-menu" class="OverlayTrigger jumpMenuTrigger" data-cacheOverlay="true" title="Open quick navigation"><!--Jump to...--></a>
  209.  
  210. <div class="boardTitle"><strong>Animelon</strong></div>
  211.  
  212. <span class="crumbs">
  213.  
  214. <span class="crust">
  215. <a href="http://animelon.com/" class="crumb" rel="up" itemprop="url"><span itemprop="title">Home</span></a>
  216. <span class="arrow"><span></span></span>
  217. </span>
  218.  
  219.  
  220.  
  221. <span class="crust">
  222. <a href="/" class="crumb" rel="up" itemprop="url"><span itemprop="title">cosplays</span></a>
  223. <span class="arrow"><span>&gt;</span></span>
  224. </span>
  225.  
  226.  
  227. </span>
  228. </fieldset>
  229. </nav></div>
  230. </div>
  231. </div>
  232. </div>
  233. <header>
  234. <div id="header" style="background: url('styles/flexiledark/xenforo/images/23.png') no-repeat center top;">
  235. <div id="logoBlock">
  236. <div class="pageWidth">
  237. <div class="pageContent">
  238. <div id="logo"><a href="/">
  239. <span></span>
  240. <img alt="Animelon" src="styles/flexiledark/xenforo/logo.png">
  241. </a></div>
  242.  
  243. <div id="titles">
  244. </div>
  245.  
  246. <div id="say" style="display: none; ">
  247. Subscribe to our<br>
  248. Cosplay image<br>
  249. Feed!
  250. </div>
  251.  
  252. <div id="say2" style="display: none; ">
  253. Oh c'mon<br>
  254. Bookmark us!
  255. </div>
  256.  
  257. <div id="say3" style="display: none; ">
  258. Have a question?<br>
  259. Get an answer!
  260. </div>
  261.  
  262. <div id="say4" style="display: none; ">
  263. Welcome! to<br>
  264. Animelon :3
  265. </div>
  266.  
  267.  
  268. <span class="helper"></span>
  269. </div>
  270. </div>
  271. </div>
  272. <div class="secondaryBar"></div>
  273. <div id="navigation" class="pageWidth">
  274. <div class="pageContent">
  275. <nav>
  276.  
  277. <div class="navTabs">
  278. <ul class="publicTabs">
  279.  
  280. <!-- home -->
  281.  
  282.  
  283.  
  284. <!-- extra tabs: home -->
  285.  
  286.  
  287.  
  288. <li class="navTab home PopupClosed">
  289.  
  290. <a href="http://animelon.com/" class="navLink">Home</a>
  291.  
  292.  
  293. <div class="Menu JsOnly tabMenu">
  294. <div class="primaryContent menuHeader">
  295. <h3>Home</h3>
  296. </div>
  297. </div>
  298. </li>
  299.  
  300.  
  301.  
  302.  
  303.  
  304.  
  305. <!-- forums -->
  306.  
  307. <li class="navTab forums Popup PopupControl PopupClosed">
  308.  
  309. <a href="" class="navLink">Forums</a>
  310. <a href="" class="SplitCtrl" rel="Menu"></a>
  311.  
  312. <div class="Menu JsOnly tabMenu">
  313. <div class="primaryContent menuHeader">
  314. <h3>Forums</h3>
  315. <div class="muted">Quick Links</div>
  316.  
  317. </div>
  318. <ul class="secondaryContent blockLinksList">
  319.  
  320. <li><a href="forums/-/mark-read" class="OverlayTrigger">Mark All Forums Read</a></li>
  321. <li><a href="search/?type=post">Search Forums</a></li>
  322. <li><a href="watched/threads">Watched Threads</a></li>
  323. <li><a href="find-new/threads">What's New?</a></li>
  324.  
  325.  
  326. </ul>
  327. </div>
  328. </li>
  329.  
  330.  
  331.  
  332. <!-- extra tabs -->
  333.  
  334.  
  335.  
  336. <li class="navTab $ selected">
  337. <a class="navLink" href="/cosplays/">Cosplays</a>
  338. <a rel="Menu" class="SplitCtrl" href="/cosplays/"></a>
  339. <div class="tabLinks">
  340. <div class="primaryContent menuHeader">
  341. <h3>cosplays</h3>
  342. <div class="muted">Quick Links</div>
  343. </div>
  344. <ul class="secondaryContent blockLinksList">
  345. <li><a href="/cosplays/">Index</a></li>
  346. <li><a href="/cosplays/comment/list">Comments</a></li>
  347. <li><a href="/cosplays/tags/alphabetic">Tags</a></li>
  348. <li><a href="/cosplays/alias/list">Alias</a></li>
  349. <li><a href="/cosplays/upload">Upload</a></li>
  350. </ul>
  351. </div>
  352. </li>
  353.  
  354.  
  355.  
  356. <li class="navTab Popup PopupControl PopupClosed">
  357.  
  358. <a href="events/" class="navLink">Events</a>
  359. <a href="events/" class="SplitCtrl" rel="Menu"></a>
  360.  
  361. <div class="Menu JsOnly tabMenu">
  362. <div class="primaryContent menuHeader">
  363. <h3>Events</h3>
  364. <div class="muted">Quick Links</div>
  365. </div>
  366. <ul class="secondaryContent blockLinksList">
  367. <li><a href="events/monthly">Monthly View</a></li>
  368. <li><a href="events/weekly">Weekly View</a></li>
  369. <li><a href="events/upcoming">Upcoming Events</a></li>
  370. <li><a href="events/history">Events Archive</a></li>
  371.  
  372.  
  373. </ul>
  374. </div>
  375. </li>
  376.  
  377.  
  378. <li class="navTab Popup PopupControl PopupClosed">
  379.  
  380. <a href="media/" class="navLink">Media</a>
  381. <a href="media/" class="SplitCtrl" rel="Menu"></a>
  382.  
  383. <div class="Menu JsOnly tabMenu">
  384. <div class="primaryContent menuHeader">
  385. <h3>Media</h3>
  386. <div class="muted">Quick Links</div>
  387. </div>
  388. <ul class="secondaryContent blockLinksList">
  389. <li><a href="media/categories">Categories</a></li>
  390. <li><a href="media/playlists">Playlists</a></li>
  391. <li><a href="media/random">Random Media</a></li>
  392.  
  393. </ul>
  394. </div>
  395. </li>
  396.  
  397.  
  398.  
  399. <!-- members -->
  400.  
  401. <li class="navTab members Popup PopupControl PopupClosed">
  402.  
  403. <a href="members/" class="navLink">Members</a>
  404. <a href="members/" class="SplitCtrl" rel="Menu"></a>
  405.  
  406. <div class="Menu JsOnly tabMenu">
  407. <div class="primaryContent menuHeader">
  408. <h3>Members</h3>
  409. <div class="muted">Quick Links</div>
  410. </div>
  411. <ul class="secondaryContent blockLinksList">
  412.  
  413. <li><a href="members/">Registered Members</a></li>
  414. <li><a href="online/">Current Visitors</a></li>
  415. <li><a href="recent-activity/">Activity</a></li>
  416.  
  417. </ul>
  418. </div>
  419. </li>
  420.  
  421. <!-- help -->
  422.  
  423. <li class="navTab help Popup PopupControl PopupClosed">
  424.  
  425. <a href="help/" class="navLink" rel="help">Help</a>
  426. <a href="help/" class="SplitCtrl" rel="Menu"></a>
  427.  
  428. <div class="Menu JsOnly tabMenu">
  429. <div class="primaryContent menuHeader">
  430. <h3>Help</h3>
  431. <div class="muted">Quick Links</div>
  432. </div>
  433. <ul class="secondaryContent blockLinksList">
  434.  
  435. <li><a href="help/smilies">Smilies</a></li>
  436. <li><a href="help/bb-codes">BB Codes</a></li>
  437. <li><a href="help/trophies">Melons</a></li>
  438. </ul>
  439. </div>
  440. </li>
  441.  
  442. <!-- extra tabs: end -->
  443.  
  444. </ul>
  445. <!-- navigation_visitor_tab include here -->
  446.  
  447. </div>
  448.  
  449. <span class="helper"></span>
  450.  
  451. </nav>
  452. </div>
  453. </div>
  454.  
  455. <div id="searchBar" class="pageWidth">
  456.  
  457.  
  458.  
  459. <fieldset id="QuickSearch">
  460. <form action="search/search" method="post" class="formPopup">
  461.  
  462. <div class="primaryControls">
  463. <!-- block: primaryControls -->
  464. <input type="search" name="keywords" value="" class="textCtrl" placeholder="Forum Search..." results="0" title="Enter your search and hit enter" id="QuickSearchQuery" />
  465. <!-- end block: primaryControls -->
  466. </div>
  467.  
  468. <div class="secondaryControls">
  469. <div class="controlsWrapper">
  470.  
  471. <!-- block: secondaryControls -->
  472. <dl class="ctrlUnit">
  473. <dt></dt>
  474. <dd><label for="searchBar_title_only"><input type="checkbox" name="title_only" id="searchBar_title_only" value="1" /> Search titles only</label></dd>
  475. </dl>
  476.  
  477. <dl class="ctrlUnit">
  478. <dt><label for="searchBar_users">Posted by Member:</label></dt>
  479. <dd>
  480. <input type="text" name="users" value="" class="textCtrl AutoComplete" id="searchBar_users" />
  481. <p class="explain">Separate names with a comma.</p>
  482. </dd>
  483. </dl>
  484.  
  485. <dl class="ctrlUnit">
  486. <dt><label for="searchBar_date">Newer Than:</label></dt>
  487. <dd><input type="date" name="date" value="" class="textCtrl" id="searchBar_date" /></dd>
  488. </dl>
  489. </div>
  490. <!-- end block: secondaryControls -->
  491.  
  492. <dl class="ctrlUnit submitUnit">
  493. <dt></dt>
  494. <dd><input type="submit" value="Find Now" class="button primary"></dd>
  495. </dl>
  496.  
  497. <a href="search/" class="advSearchLink">Advanced search...</a>
  498. </div>
  499.  
  500. <input type="hidden" name="_xfToken" value="1,1305569195,61fa6b8df32e2e9d32e3ee9aefd9563934c152c6" />
  501. </form>
  502. </fieldset>
  503.  
  504. <div id="top_extras">
  505. <a href="cosplays/rss/images/" onmouseover="showTalkArea();" onmouseout="hideTalkArea();"><img src="styles/flexiledark/xenforo/images/blank.gif" id="toprss" width="22" height="22" alt="" border="0"></a>
  506. <a href="javascript:Bookmark();" onmouseover="showTalkArea2();" onmouseout="hideTalkArea2();"><img src="styles/flexiledark/xenforo/images/blank.gif" id="topbookmark" width="22" height="22" alt="" border="0">
  507. </a><a href="misc/contact/" onmouseover="showTalkArea3();" onmouseout="hideTalkArea3();"><img src="styles/flexiledark/xenforo/images/blank.gif" id="topcontact" width="22" height="22" alt="" border="0"></a>
  508. </div>
  509. </div>
  510. </div>
  511.  
  512. </header>
  513. </div>
  514. <footer>
  515.  
  516. <div class="footer">
  517. <div class="pageWidth_footer">
  518. <ul id="anime-footer">
  519.  
  520. <li>
  521. <a href="http://animelon.com/media/">
  522. <img height="190" width="190" alt="" src="styles/flexiledark/xenforo/images/4.png">
  523. <br>
  524. Media Section.</strong><p></p>View and add tons of media from anime to just plain old Fail.</a></li>
  525.  
  526. <li>
  527. <a href="http://animelon.com/forums/">
  528. <img height="190" width="190" alt="" src="styles/flexiledark/xenforo/images/3.png">
  529. <br>
  530. Forums</strong><p></p>Help us grow by posting on everything and anything anime & cosplay</a></li>
  531.  
  532. <li>
  533. <a href="http://animelon.com/cosplays/"><img height="190" width="190" alt="" src="styles/flexiledark/xenforo/images/2.png">
  534. <br>
  535. Cosplays Booru</strong><p></p>View over 25K cosplay images right here... Add your own and any you may find! all tagged for easy searching</a></li>
  536.  
  537. <li>
  538. <a href="http://animelon.com/help/"><img height="190" width="190" alt="" src="styles/flexiledark/xenforo/images/1.png">
  539. <br>
  540. Help Section</strong><p></p>Need Help on the site? Check this place out for the best info on helping you around :)</a></li>
  541. </ul>
  542. </div>
  543. </div>
  544. <div class="copyright">&copy;2011 Animelon Ran on the mighty <a href="http://xenforo.com" class="concealed">Forum software by XenForo&trade; &copy;2011 XenForo Ltd.</a>, theme by Erik Swan (modded by Vodkaholic) All Rights Reserved. <strong>All Your Melons are Belong to Us.</strong></div>
  545.  
  546. </footer>
  547.  
  548. </footer>
  549.  
  550. $jsBody
  551. <script type="text/javascript">
  552. XenForo.Facebook.forceInit = true;
  553. </script>
  554. </body></html>
  555. EOD;
  556. }
  557.  
  558. /**
  559. * A handy function which does exactly what it says in the method name
  560. */
  561. private function block_to_html($block, $hidable=false, $salt="") {
  562. $h = $block->header;
  563. $b = $block->body;
  564. $html = "";
  565. $i = str_replace(' ', '_', $h) . $salt;
  566. if($hidable) $html .= "
  567. <script><!--
  568. $(document).ready(function() {
  569. $(\"#$i-toggle\").click(function() {
  570. $(\"#$i\").slideToggle(\"slow\", function() {
  571. if($(\"#$i\").is(\":hidden\")) {
  572. $.cookie(\"$i-hidden\", 'true', {path: '/'});
  573. }
  574. else {
  575. $.cookie(\"$i-hidden\", 'false', {path: '/'});
  576. }
  577. });
  578. });
  579. if($.cookie(\"$i-hidden\") == 'true') {
  580. $(\"#$i\").hide();
  581. }
  582. });
  583. //--></script>
  584. ";
  585. if(!is_null($h)) {
  586. if($salt == "main") {
  587. $html .= "<div class='maintop navside tab' id='$i-toggle'>$h</div>";
  588. } else {
  589. $html .= "<div class='navtop navside tab' id='$i-toggle'>$h</div>";
  590. }
  591. }
  592. if(!is_null($b)) {
  593. //if(strpos($b, "<!-- cancel border -->")) {
  594. if($salt =="main") {
  595. $html .= "<div class='blockbody' id='$i'>$b</div>";
  596. }
  597. else {
  598. $html .= "
  599. <div class='navside1 tab' id='$i'>$b</div>
  600. ";
  601. }
  602. }
  603.  
  604. return $html;
  605. }
  606.  
  607. private function navlinks($link, $desc, $pages_matched) {
  608. /**
  609. * Woo! We can actually SEE THE CURRENT PAGE!! (well... see it highlighted in the menu.)
  610. */
  611. $html = null;
  612. $url = $_GET['q'];
  613.  
  614. $re1='.*?';
  615. $re2='((?:[a-z][a-z]+))';
  616.  
  617. if ($c=preg_match_all ("/".$re1.$re2."/is", $url, $matches)) {
  618. $url=$matches[1][0];
  619. }
  620.  
  621. for($i=0;$i<count($pages_matched);$i++) {
  622. if($url == $pages_matched[$i]) {
  623. $html = "<a class='tab2-selected' href='$link'>$desc</a>";
  624. }
  625. }
  626. if(is_null($html)) {$html = "<a class='tab' href='$link'>$desc</a>";}
  627. return $html;
  628. }
  629.  
  630.  
  631.  
  632. }
  633. ?>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement