Esempio n. 1
0
 /**
  * Show a promobox on the bottom of your tool.
  *
  * @param $imgSize integer (optional) Defaults to 28px.
  * If 0 or a non-integer the image will be hidden.
  * @param $helpTranslateDomain mixed (optional)
  * - null (or nothing, default): Current domain
  * - true: All domains
  * - string: Custom domain
  * - false: Disable this message all together.
  * @return The HTML for the promo box.
  */
 public function getPromoBox($imgSize = 28, $helpTranslateDomain = TSINT_HELP_CURRENT)
 {
     // Logo
     if (is_int($imgSize) && $imgSize > 0) {
         $src = '//upload.wikimedia.org/wikipedia/commons/thumb/b/be' . '/Wikimedia_Community_Logo-Toolserver.svg' . "/{$imgSize}px-Wikimedia_Community_Logo-Toolserver.svg.png";
         $img = TsIntuitionUtil::tag('', 'img', array('src' => $src, 'width' => $imgSize, 'height' => $imgSize, 'alt' => '', 'title' => '', 'class' => 'tsint-logo'));
     } else {
         $img = '';
     }
     // Promo message
     $promoMsgOpts = array('domain' => 'tsintuition', 'escape' => 'html', 'raw-variables' => true, 'variables' => array('<a href="//translatewiki.net/">translatewiki.net</a>', '<a href="' . $this->dashboardHome . '">Toolserver Intuition</a>'));
     $powered = $this->msg('bl-promo', $promoMsgOpts);
     $change = $this->msg('bl-changelanguage', 'tsintuition');
     // Help translation
     if ($helpTranslateDomain === TSINT_HELP_ALL) {
         $helpTranslateDomain = '0-all';
         $twLinkText = $this->msg('help-translate-all', 'tsintuition');
     } elseif ($helpTranslateDomain === TSINT_HELP_CURRENT) {
         $helpTranslateDomain = $this->getDomain();
         $twLinkText = $this->msg('help-translate-tool', 'tsintuition');
     } else {
         // TSINT_HELP_NONE
         $twLinkText = $this->msg('help-translate-tool', 'tsintuition');
     }
     $helpTranslateLink = '';
     if (is_string($helpTranslateDomain)) {
         $helpTranslateDomain = strtolower($helpTranslateDomain);
         // translatewiki.net/w/i.php?language=nl&title=Special:Translate&group=tsint-0-all
         $twParams = array('title' => 'Special:Translate', 'language' => $this->getLang(), 'group' => "tsint-{$helpTranslateDomain}");
         $twParams = http_build_query($twParams);
         $helpTranslateLink = '<small>(' . TsIntuitionUtil::tag($twLinkText, 'a', array('href' => "//translatewiki.net/w/i.php?{$twParams}", 'title' => $this->msg('help-translate-tooltip', 'tsintuition'))) . ')</small>';
     }
     // Build output
     return "<div class=\"tsint-promobox\"><p><a href=\"{$this->getDashboardReturnToUrl()}\">{$img}</a> " . "{$powered} {$this->dashboardBacklink()} {$helpTranslateLink}</p></div>";
 }
 private function gender($user, $parameters, $msg)
 {
     switch (count($parameters)) {
         case 0:
             $this->addParseError("{{GENDER:}} with no variants");
             return '';
         case 1:
             return $parameters[0];
         case 2:
             return TsIntuitionUtil::tag($parameters[0], 'span', array('class' => 'gender-male gender-neutral')) . TsIntuitionUtil::tag($parameters[1], 'span', array('class' => 'gender-female'));
         default:
             $this->addParseError("{{GENDER:}} given too many variants");
         case 3:
             return TsIntuitionUtil::tag($parameters[2], 'span', array('class' => 'gender-neutral')) . TsIntuitionUtil::tag($parameters[0], 'span', array('class' => 'gender-male')) . TsIntuitionUtil::tag($parameters[1], 'span', array('class' => 'gender-female'));
     }
 }