PageRenderTime 59ms CodeModel.GetById 29ms RepoModel.GetById 0ms app.codeStats 0ms

/newcorp/functions.php

https://github.com/trains58554/osclass-themes
PHP | 210 lines | 165 code | 26 blank | 19 comment | 39 complexity | 0674688312c211665ca51d1cf61972e3 MD5 | raw file
  1. <?php
  2. /*
  3. * OSCLass – software for creating and publishing online classified
  4. * advertising platforms
  5. *
  6. * Copyright (C) 2010 OSCLASS
  7. *
  8. * This program is free software: you can redistribute it and/or
  9. * modify it under the terms of the GNU Affero General Public License
  10. * as published by the Free Software Foundation, either version 3 of
  11. * the License, or (at your option) any later version.
  12. *
  13. * This program is distributed in the hope that it will be useful, but
  14. * WITHOUT ANY WARRANTY; without even the implied warranty of
  15. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  16. * GNU Affero General Public License for more details.
  17. *
  18. * You should have received a copy of the GNU Affero General Public
  19. * License along with this program. If not, see <http://www.gnu.org/licenses/>.
  20. */
  21. if( !function_exists('add_logo_header') ) {
  22. function add_logo_header() {
  23. $html = '<img border="0" alt="' . osc_page_title() . '" src="' . osc_current_web_theme_url('images/logo.jpg') . '">';
  24. $title = osc_page_title() ;
  25. $logo_url = osc_current_web_theme_url('images/logo.jpg') ;
  26. $js = <<<JAVASCRIPT
  27. <script>
  28. \$(document).ready(function () {
  29. var img = $('<img>').attr('src', '$logo_url').attr('title', '$title').attr('alt', '$title');
  30. \$('#logo').html(img);
  31. });
  32. </script>
  33. JAVASCRIPT;
  34. if( file_exists( WebThemes::newInstance()->getCurrentThemePath() . 'images/logo.jpg' ) ) {
  35. echo $js;
  36. }
  37. }
  38. osc_add_hook("header", "add_logo_header");
  39. }
  40. if( !function_exists('newcorp_admin_menu') ) {
  41. function newcorp_admin_menu() {
  42. echo '<h3><a href="#">'. __('Newcorp theme', 'newcorp') .'</a></h3>
  43. <ul>
  44. <li><a href="' . osc_admin_render_theme_url('oc-content/themes/newcorp/admin/settings.php') . '">&raquo; '.__('Settings theme', 'newcorp').'</a></li>
  45. </ul>';
  46. }
  47. osc_add_hook('admin_menu', 'modern_admin_menu');
  48. }
  49. if( !function_exists('meta_title') ) {
  50. function meta_title( ) {
  51. $location = Rewrite::newInstance()->get_location();
  52. $section = Rewrite::newInstance()->get_section();
  53. switch ($location) {
  54. case ('item'):
  55. switch ($section) {
  56. case 'item_add': return __('Publish an item','newcorp') . ' - ' . osc_page_title(); break;
  57. case 'item_edit': return __('Edit your item','newcorp') . ' - ' . osc_page_title(); break;
  58. case 'send_friend': return __('Send to a friend','newcorp') . ' - ' . osc_item_title() . ' - ' . osc_page_title(); break;
  59. case 'contact': return __('Contact seller','newcorp') . ' - ' . osc_item_title() . ' - ' . osc_page_title(); break;
  60. default: return osc_item_title() . ' - ' . osc_page_title(); break;
  61. }
  62. break;
  63. case('page'):
  64. return osc_static_page_title() . ' - ' . osc_page_title();
  65. break;
  66. case('search'):
  67. $region = Params::getParam('sRegion');
  68. $city = Params::getParam('sCity');
  69. $pattern = Params::getParam('sPattern');
  70. $category = osc_search_category_id();
  71. $category = ((count($category) == 1) ? $category[0] : '');
  72. $s_page = '';
  73. $i_page = Params::getParam('iPage');
  74. if($i_page != '' && $i_page > 0) {
  75. $s_page = __('page', 'newcorp') . ' ' . ($i_page + 1) . ' - ';
  76. }
  77. $b_show_all = ($region == '' && $city == '' & $pattern == '' && $category == '');
  78. $b_category = ($category != '');
  79. $b_pattern = ($pattern != '');
  80. $b_city = ($city != '');
  81. $b_region = ($region != '');
  82. if($b_show_all) {
  83. return __('Show all items', 'newcorp') . ' - ' . $s_page . osc_page_title();
  84. }
  85. $result = '';
  86. if($b_pattern) {
  87. $result .= $pattern . ' &raquo; ';
  88. }
  89. if($b_category) {
  90. $list = array();
  91. $aCategories = Category::newInstance()->toRootTree($category);
  92. if(count($aCategories) > 0) {
  93. foreach ($aCategories as $single) {
  94. $list[] = $single['s_name'];
  95. }
  96. $result .= implode(' &raquo; ', $list) . ' &raquo; ';
  97. }
  98. }
  99. if($b_city) {
  100. $result .= $city . ' &raquo; ';
  101. }
  102. if($b_region) {
  103. $result .= $region . ' &raquo; ';
  104. }
  105. $result = preg_replace('|\s?&raquo;\s$|', '', $result);
  106. if($result == '') {
  107. $result = __('Search', 'newcorp');
  108. }
  109. return $result . ' - ' . $s_page . osc_page_title();
  110. break;
  111. case('login'):
  112. switch ($section) {
  113. case('recover'): return __('Recover your password','newcorp') . ' - ' . osc_page_title();
  114. default: return __('Login','newcorp') . ' - ' . osc_page_title();
  115. }
  116. break;
  117. case('register'):
  118. return __('Create a new account','newcorp') . ' - ' . osc_page_title();
  119. break;
  120. case('user'):
  121. switch ($section) {
  122. case('dashboard'): return __('Dashboard','newcorp') . ' - ' . osc_page_title(); break;
  123. case('items'): return __('Manage my items','newcorp') . ' - ' . osc_page_title(); break;
  124. case('alerts'): return __('Manage my alerts','newcorp') . ' - ' . osc_page_title(); break;
  125. case('profile'): return __('Update my profile','newcorp') . ' - ' . osc_page_title(); break;
  126. case('change_email'): return __('Change my email','newcorp') . ' - ' . osc_page_title(); break;
  127. case('change_password'): return __('Change my password','newcorp') . ' - ' . osc_page_title(); break;
  128. case('forgot'): return __('Recover my password','newcorp') . ' - ' . osc_page_title(); break;
  129. default: return osc_page_title(); break;
  130. }
  131. break;
  132. case('contact'):
  133. return __('Contact','newcorp') . ' - ' . osc_page_title();
  134. break;
  135. default:
  136. return osc_page_title();
  137. break;
  138. }
  139. }
  140. }
  141. if( !function_exists('meta_description') ) {
  142. function meta_description( ) {
  143. $location = Rewrite::newInstance()->get_location();
  144. $section = Rewrite::newInstance()->get_section();
  145. switch ($location) {
  146. case ('item'):
  147. switch ($section) {
  148. case 'item_add': return ''; break;
  149. case 'item_edit': return ''; break;
  150. case 'send_friend': return ''; break;
  151. case 'contact': return ''; break;
  152. default:
  153. return osc_item_category() . ', ' . osc_highlight(osc_item_description(), 140) . '..., ' . osc_item_category();
  154. break;
  155. }
  156. break;
  157. case('page'):
  158. return osc_highlight(strip_tags(osc_static_page_text()), 140);
  159. break;
  160. case('search'):
  161. $result = '';
  162. if(osc_count_items() == 0) {
  163. return '';
  164. }
  165. if(osc_has_items ()) {
  166. $result = osc_item_category() . ', ' . osc_highlight(strip_tags(osc_item_description()), 140) . '..., ' . osc_item_category();
  167. }
  168. osc_reset_items();
  169. return $result;
  170. case(''): // home
  171. $result = '';
  172. if(osc_count_latest_items() == 0) {
  173. return '';
  174. }
  175. if(osc_has_latest_items()) {
  176. $result = osc_item_category() . ', ' . osc_highlight(strip_tags(osc_item_description()), 140) . '..., ' . osc_item_category();
  177. }
  178. osc_reset_items();
  179. return $result;
  180. break;
  181. }
  182. }
  183. }
  184. ?>