示例#1
0
文件: Xml.php 项目: rocLv/conference
 /**
  * @param $year Integer
  * @param $month Integer
  * @return string Formatted HTML
  */
 public static function dateMenu($year, $month)
 {
     # Offset overrides year/month selection
     if ($month && $month !== -1) {
         $encMonth = intval($month);
     } else {
         $encMonth = '';
     }
     if ($year) {
         $encYear = intval($year);
     } else {
         if ($encMonth) {
             $thisMonth = intval(gmdate('n'));
             $thisYear = intval(gmdate('Y'));
             if (intval($encMonth) > $thisMonth) {
                 $thisYear--;
             }
             $encYear = $thisYear;
         } else {
             $encYear = '';
         }
     }
     return Xml::label(wfMsg('year'), 'year') . ' ' . Xml::input('year', 4, $encYear, array('id' => 'year', 'maxlength' => 4)) . ' ' . Xml::label(wfMsg('month'), 'month') . ' ' . Xml::monthSelector($encMonth, -1);
 }
	/**
	 * Returns query form fields.
	 * @param $opts Form options.
	 * @return Array of form fields.
	 */
	protected static function getQueryFormFields( FormOptions $opts ) {
		global $wgWikilogEnableTags;

		$fields = array();

		$fields['wikilog'] = Xml::inputLabelSep(
			wfMsg( 'wikilog-form-wikilog' ), 'wikilog', 'wl-wikilog', 40,
			str_replace( '_', ' ', $opts->consumeValue( 'wikilog' ) )
		);

		$fields['category'] = Xml::inputLabelSep(
			wfMsg( 'wikilog-form-category' ), 'category', 'wl-category', 40,
			str_replace( '_', ' ', $opts->consumeValue( 'category' ) )
		);

		$fields['author'] = Xml::inputLabelSep(
			wfMsg( 'wikilog-form-author' ), 'author', 'wl-author', 40,
			str_replace( '_', ' ', $opts->consumeValue( 'author' ) )
		);

		if ( $wgWikilogEnableTags ) {
			$fields['tag'] = Xml::inputLabelSep(
				wfMsg( 'wikilog-form-tag' ), 'tag', 'wl-tag', 40,
				str_replace( '_', ' ', $opts->consumeValue( 'tag' ) )
			);
		}

		$fields['date'] = array(
			Xml::label( wfMsg( 'wikilog-form-date' ), 'wl-month' ),
			Xml::monthSelector( $opts->consumeValue( 'month' ), '', 'wl-month' ) .
				" " . Xml::input( 'year', 4, $opts->consumeValue( 'year' ), array( 'maxlength' => 4 ) )
		);
		$opts->consumeValue( 'day' );	// ignore day, not really useful

		$statusSelect = new XmlSelect( 'show', 'wl-status', $opts->consumeValue( 'show' ) );
		$statusSelect->addOption( wfMsg( 'wikilog-show-all' ), 'all' );
		$statusSelect->addOption( wfMsg( 'wikilog-show-published' ), 'published' );
		$statusSelect->addOption( wfMsg( 'wikilog-show-drafts' ), 'drafts' );
		$fields['status'] = array(
			Xml::label( wfMsg( 'wikilog-form-status' ), 'wl-status' ),
			$statusSelect->getHTML()
		);

		$fields['submit'] = Xml::submitbutton( wfMsg( 'allpagessubmit' ) );
		return $fields;
	}
示例#3
0
/**
 * Generates the namespace selector form with hidden attributes.
 * @param $options Array: the options to be included.
 */
function contributionsForm($options)
{
    global $wgScript, $wgTitle, $wgRequest;
    $options['title'] = $wgTitle->getPrefixedText();
    if (!isset($options['target'])) {
        $options['target'] = '';
    } else {
        //XXCHANGED
        $options['target'] = str_replace('-', ' ', $options['target']);
    }
    if (!isset($options['namespace'])) {
        $options['namespace'] = '';
    }
    if (!isset($options['contribs'])) {
        $options['contribs'] = 'user';
    }
    if (!isset($options['year'])) {
        $options['year'] = '';
    }
    if (!isset($options['month'])) {
        $options['month'] = '';
    }
    if ($options['contribs'] == 'newbie') {
        $options['target'] = '';
    }
    $f = Xml::openElement('form', array('method' => 'get', 'action' => $wgScript));
    foreach ($options as $name => $value) {
        if (in_array($name, array('namespace', 'target', 'contribs', 'year', 'month'))) {
            continue;
        }
        $f .= "\t" . Xml::hidden($name, $value) . "\n";
    }
    $f .= '<fieldset>' . Xml::element('legend', array(), wfMsg('sp-contributions-search')) . Xml::radioLabel(wfMsgExt('sp-contributions-newbies', array('parseinline')), 'contribs', 'newbie', 'newbie', $options['contribs'] == 'newbie' ? true : false) . '<br />' . Xml::radioLabel(wfMsgExt('sp-contributions-username', array('parseinline')), 'contribs', 'user', 'user', $options['contribs'] == 'user' ? true : false) . ' ' . Xml::input('target', 20, $options['target']) . '&nbsp;&nbsp;&nbsp; ' . '<span style="white-space: nowrap">' . Xml::label(wfMsg('namespace'), 'namespace') . ' ' . Xml::namespaceSelector($options['namespace'], '') . '</span>' . Xml::openElement('p') . '<span style="white-space: nowrap">' . Xml::label(wfMsg('year'), 'year') . ' ' . Xml::input('year', 4, $options['year'], array('id' => 'year', 'maxlength' => 4)) . '&nbsp;&nbsp;</span>' . ' ' . '<span style="white-space: nowrap">' . Xml::label(wfMsg('month'), 'month') . ' ' . Xml::monthSelector($options['month'], -1) . ' ' . '&nbsp;&nbsp;</span><br />' . Xml::submitButton(wfMsg('sp-contributions-submit'), array("class" => "button primary", "style" => "float:right; margin-top:5px; margin-right:0;")) . Xml::closeElement('p');
    $explain = wfMsgExt('sp-contributions-explain', 'parseinline');
    if (!wfEmptyMsg('sp-contributions-explain', $explain)) {
        $f .= "<p>{$explain}</p>";
    }
    $f .= '</fieldset>' . Xml::closeElement('form');
    return $f;
}
 /**
  * Generates the namespace selector form with hidden attributes.
  * @param $this->opts Array: the options to be included.
  */
 protected function getForm()
 {
     global $wgScript, $wgTitle;
     $this->opts['title'] = $wgTitle->getPrefixedText();
     if (!isset($this->opts['target'])) {
         $this->opts['target'] = '';
     } else {
         $this->opts['target'] = str_replace('_', ' ', $this->opts['target']);
     }
     if (!isset($this->opts['namespace'])) {
         $this->opts['namespace'] = '';
     }
     if (!isset($this->opts['contribs'])) {
         $this->opts['contribs'] = 'user';
     }
     if (!isset($this->opts['year'])) {
         $this->opts['year'] = '';
     }
     if (!isset($this->opts['month'])) {
         $this->opts['month'] = '';
     }
     if ($this->opts['contribs'] == 'newbie') {
         $this->opts['target'] = '';
     }
     $f = Xml::openElement('form', array('method' => 'get', 'action' => $wgScript));
     foreach ($this->opts as $name => $value) {
         if (in_array($name, array('namespace', 'target', 'contribs', 'year', 'month'))) {
             continue;
         }
         $f .= "\t" . Xml::hidden($name, $value) . "\n";
     }
     $f .= '<fieldset>' . Xml::element('legend', array(), wfMsg('sp-contributions-search')) . Xml::radioLabel(wfMsgExt('sp-contributions-newbies', array('parseinline')), 'contribs', 'newbie', 'newbie', $this->opts['contribs'] == 'newbie' ? true : false) . '<br />' . Xml::radioLabel(wfMsgExt('sp-contributions-username', array('parseinline')), 'contribs', 'user', 'user', $this->opts['contribs'] == 'user' ? true : false) . ' ' . Xml::input('target', 20, $this->opts['target']) . ' ' . '<span style="white-space: nowrap">' . Xml::label(wfMsg('namespace'), 'namespace') . ' ' . Xml::namespaceSelector($this->opts['namespace'], '') . '</span>' . Xml::openElement('p') . '<span style="white-space: nowrap">' . Xml::label(wfMsg('year'), 'year') . ' ' . Xml::input('year', 4, $this->opts['year'], array('id' => 'year', 'maxlength' => 4)) . '</span>' . ' ' . '<span style="white-space: nowrap">' . Xml::label(wfMsg('month'), 'month') . ' ' . Xml::monthSelector($this->opts['month'], -1) . ' ' . '</span>' . Xml::submitButton(wfMsg('sp-contributions-submit')) . Xml::closeElement('p');
     $explain = wfMsgExt('sp-contributions-explain', 'parseinline');
     if (!wfEmptyMsg('sp-contributions-explain', $explain)) {
         $f .= "<p>{$explain}</p>";
     }
     $f .= '</fieldset>' . Xml::closeElement('form');
     return $f;
 }