namespace wcf\system\condition;
use wcf\data\condition\Condition;
use wcf\data\user\User;
+use wcf\data\user\UserList;
use wcf\data\DatabaseObjectList;
use wcf\system\exception\UserInputException;
use wcf\system\WCF;
* Condition implementation for the registration date of a user.
*
* @author Matthias Schmidt
- * @copyright 2001-2015 WoltLab GmbH
+ * @copyright 2001-2016 WoltLab GmbH
* @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
* @package com.woltlab.wcf
* @subpackage system.condition
use TObjectListUserCondition;
/**
- * @see \wcf\system\condition\AbstractSingleFieldCondition::$label
+ * @inheritDoc
*/
protected $label = 'wcf.user.condition.registrationDate';
protected $registrationDateStart = '';
/**
- * @see \wcf\system\condition\IObjectListCondition::addObjectListCondition()
+ * @inheritDoc
*/
public function addObjectListCondition(DatabaseObjectList $objectList, array $conditionData) {
- if (!($objectList instanceof UserList)) return;
+ if (!($objectList instanceof UserList)) {
+ throw new \InvalidArgumentException("Object list is no instance of '".UserList::class."', instance of '".get_class($objectList)."' given.");
+ }
if (isset($conditionData['registrationDateEnd'])) {
- $userList->getConditionBuilder()->add('user_table.registrationDate < ?', array(strtotime($conditionData['registrationDateEnd']) + 86400));
+ $objectList->getConditionBuilder()->add('user_table.registrationDate < ?', [strtotime($conditionData['registrationDateEnd']) + 86400]);
}
if (isset($conditionData['registrationDateStart'])) {
- $userList->getConditionBuilder()->add('user_table.registrationDate >= ?', array(strtotime($conditionData['registrationDateStart'])));
+ $objectList->getConditionBuilder()->add('user_table.registrationDate >= ?', [strtotime($conditionData['registrationDateStart'])]);
}
}
/**
- * @see \wcf\system\condition\IUserCondition::checkUser()
+ * @inheritDoc
*/
public function checkUser(Condition $condition, User $user) {
if ($condition->registrationDateStart !== null && $user->registrationDate < strtotime($condition->registrationDateStart)) {
}
/**
- * @see \wcf\system\condition\ICondition::getData()
+ * @inheritDoc
*/
public function getData() {
- $data = array();
+ $data = [];
if (strlen($this->registrationDateStart)) {
$data['registrationDateStart'] = $this->registrationDateStart;
}
/**
- * @see \wcf\system\condition\AbstractSingleFieldCondition::getFieldElement()
+ * @inheritDoc
*/
protected function getFieldElement() {
$start = WCF::getLanguage()->get('wcf.date.period.start');
$end = WCF::getLanguage()->get('wcf.date.period.end');
return <<<HTML
-<input type="date" id="registrationDateStart" name="registrationDateStart" value="{$this->registrationDateStart}" placeholder="{$start}" />
-<input type="date" id="registrationDateEnd" name="registrationDateEnd" value="{$this->registrationDateEnd}" placeholder="{$end}" />
+<input type="date" id="registrationDateStart" name="registrationDateStart" value="{$this->registrationDateStart}" placeholder="{$start}">
+<input type="date" id="registrationDateEnd" name="registrationDateEnd" value="{$this->registrationDateEnd}" placeholder="{$end}">
HTML;
}
/**
- * @see \wcf\system\condition\ICondition::readFormParameters()
+ * @inheritDoc
*/
public function readFormParameters() {
if (isset($_POST['registrationDateEnd'])) $this->registrationDateEnd = $_POST['registrationDateEnd'];
}
/**
- * @see \wcf\system\condition\ICondition::reset()
+ * @inheritDoc
*/
public function reset() {
$this->registrationDateEnd = '';
}
/**
- * @see \wcf\system\condition\ICondition::setData()
+ * @inheritDoc
*/
public function setData(Condition $condition) {
if ($condition->registrationDateEnd) {
}
/**
- * @see \wcf\system\condition\ICondition::validate()
+ * @inheritDoc
*/
public function validate() {
$registrationDateEnd = $registrationDateStart = null;
}
/**
- * @see \wcf\system\condition\IContentCondition::showContent()
+ * @inheritDoc
*/
public function showContent(Condition $condition) {
if (!WCF::getUser()->userID) return false;