X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=lib%2Faction.php;h=251b1dadac820aecc7db092ee4c1587aa3a70dd8;hb=c0bae505d91620b4af14431bc6fe706d84013f16;hp=654ec7aa43e533b6c94ca8ba8bfc580935c9357a;hpb=fd8dad39633870d2d71c3829a756e724acb45c2a;p=quix0rs-gnu-social.git diff --git a/lib/action.php b/lib/action.php index 654ec7aa43..251b1dadac 100644 --- a/lib/action.php +++ b/lib/action.php @@ -165,7 +165,7 @@ class Action extends HTMLOutputter // lawsuit { $this->element('title', null, // TRANS: Page title. %1$s is the title, %2$s is the site name. - sprintf(_("%1\$s - %2\$s"), + sprintf(_('%1$s - %2$s'), $this->title(), common_config('site', 'name'))); } @@ -181,7 +181,7 @@ class Action extends HTMLOutputter // lawsuit function title() { // TRANS: Page title for a page without a title set. - return _("Untitled page"); + return _('Untitled page'); } /** @@ -246,20 +246,6 @@ class Action extends HTMLOutputter // lawsuit Event::handle('EndShowUAStyles', array($this)); } - if (Event::handle('StartShowDesign', array($this))) { - - $user = common_current_user(); - - if (empty($user) || $user->viewdesigns) { - $design = $this->getDesign(); - - if (!empty($design)) { - $design->showCSS($this); - } - } - - Event::handle('EndShowDesign', array($this)); - } Event::handle('EndShowStyles', array($this)); if (common_config('custom_css', 'enabled')) { @@ -291,6 +277,13 @@ class Action extends HTMLOutputter // lawsuit $this->cssLink('css/display.css', $baseTheme, $media); } $this->cssLink('css/display.css', $mainTheme, $media); + + // Additional styles for RTL languages + if (is_rtl(common_language())) { + if (file_exists(Theme::file('css/rtl.css'))) { + $this->cssLink('css/rtl.css', $mainTheme, $media); + } + } } /** @@ -309,6 +302,7 @@ class Action extends HTMLOutputter // lawsuit $this->script('jquery.cookie.min.js'); $this->inlineScript('if (typeof window.JSON !== "object") { $.getScript("'.common_path('js/json2.min.js').'"); }'); $this->script('jquery.joverlay.min.js'); + $this->script('jquery.infieldlabel.min.js'); } else { $this->script('jquery.js'); $this->script('jquery.form.js'); @@ -316,7 +310,9 @@ class Action extends HTMLOutputter // lawsuit $this->script('jquery.cookie.js'); $this->inlineScript('if (typeof window.JSON !== "object") { $.getScript("'.common_path('js/json2.js').'"); }'); $this->script('jquery.joverlay.js'); + $this->script('jquery.infieldlabel.js'); } + Event::handle('EndShowJQueryScripts', array($this)); } if (Event::handle('StartShowStatusNetScripts', array($this)) && @@ -328,9 +324,16 @@ class Action extends HTMLOutputter // lawsuit $this->script('xbImportNode.js'); $this->script('geometa.js'); } + $this->inlineScript('var _peopletagAC = "' . + common_local_url('peopletagautocomplete') . '";'); $this->showScriptMessages(); - // Frame-busting code to avoid clickjacking attacks. - $this->inlineScript('if (window.top !== window.self) { window.top.location.href = window.self.location.href; }'); + // Anti-framing code to avoid clickjacking attacks in older browsers. + // This will show a blank page if the page is being framed, which is + // consistent with the behavior of the 'X-Frame-Options: SAMEORIGIN' + // header, which prevents framing in newer browser. + if (common_config('javascript', 'bustframes')) { + $this->inlineScript('if (window.top !== window.self) { document.write = ""; window.top.location = window.self.location; setTimeout(function () { document.body.innerHTML = ""; }, 1); window.self.onload = function () { document.body.innerHTML = ""; }; }'); + } Event::handle('EndShowStatusNetScripts', array($this)); Event::handle('EndShowLaconicaScripts', array($this)); } @@ -345,7 +348,6 @@ class Action extends HTMLOutputter // lawsuit * events and appending to the array. Try to avoid adding strings that won't be used, as * they'll be added to HTML output. */ - function showScriptMessages() { $messages = array(); @@ -580,6 +582,14 @@ class Action extends HTMLOutputter // lawsuit $this->elementStart('div', array('id' => 'site_nav_global_primary')); $pn = new PrimaryNav($this); $pn->show(); + + $user = common_current_user(); + + if (!empty($user) || !common_config('site', 'private')) { + $form = new SearchForm($this); + $form->show(); + } + $this->elementEnd('div'); } @@ -609,17 +619,16 @@ class Action extends HTMLOutputter // lawsuit */ function showNoticeForm() { - $tabs = array('status' => _('Status')); + // TRANS: Tab on the notice form. + $tabs = array('status' => _m('TAB','Status')); $this->elementStart('div', 'input_forms'); if (Event::handle('StartShowEntryForms', array(&$tabs))) { - $this->elementStart('ul', array('class' => 'nav', 'id' => 'input_form_nav')); foreach ($tabs as $tag => $title) { - $attrs = array('id' => 'input_form_nav_'.$tag, 'class' => 'input_form_nav_tab'); @@ -647,7 +656,6 @@ class Action extends HTMLOutputter // lawsuit $this->elementEnd('div'); foreach ($tabs as $tag => $title) { - $attrs = array('class' => 'input_form', 'id' => 'input_form_'.$tag); @@ -657,7 +665,8 @@ class Action extends HTMLOutputter // lawsuit if (Event::handle('StartMakeEntryForm', array($tag, $this, &$form))) { if ($tag == 'status') { - $form = new NoticeForm($this); + $options = $this->noticeFormOptions(); + $form = new NoticeForm($this, $options); } Event::handle('EndMakeEntryForm', array($tag, $this, $form)); } @@ -673,6 +682,11 @@ class Action extends HTMLOutputter // lawsuit $this->elementEnd('div'); } + function noticeFormOptions() + { + return array(); + } + /** * Show anonymous message. * @@ -739,7 +753,6 @@ class Action extends HTMLOutputter // lawsuit * * @return nothing */ - function showProfileBlock() { if (common_logged_in()) { @@ -1349,16 +1362,26 @@ class Action extends HTMLOutputter // lawsuit * * @return nothing */ - function menuItem($url, $text, $title=null, $is_selected=false, $id=null) + function menuItem($url, $text, $title=null, $is_selected=false, $id=null, $class=null) { // Added @id to li for some control. // XXX: We might want to move this to htmloutputter.php - $lattrs = array(); + $lattrs = array(); + $classes = array(); + if ($class !== null) { + $classes[] = trim($class); + } if ($is_selected) { - $lattrs['class'] = 'current'; + $classes[] = 'current'; } - (is_null($id)) ? $lattrs : $lattrs['id'] = $id; + if (!empty($classes)) { + $lattrs['class'] = implode(' ', $classes); + } + + if (!is_null($id)) { + $lattrs['id'] = $id; + } $this->elementStart('li', $lattrs); $attrs['href'] = $url; @@ -1427,16 +1450,6 @@ class Action extends HTMLOutputter // lawsuit return null; } - /** - * A design for this action - * - * @return Design a design object to use - */ - function getDesign() - { - return Design::siteDesign(); - } - /** * Check the session token. *