/**
  * @see	\wcf\data\IEditableObject::create()
  */
 public static function create(array $parameters = array())
 {
     $group = parent::create($parameters);
     // update accessible groups
     self::updateAccessibleGroups($group->groupID);
     return $group;
 }
Beispiel #2
0
	/**
	 * @see	wcf\data\DatabaseObjectEditor::create()
	 */
	public static function create(array $parameters = array()) {
		if (isset($parameters['userID']) && !$parameters['userID']) {
			$parameters['userID'] = null;
		}
		
		return parent::create($parameters);
	}
 /**
  * @see	wcf\data\IEditableObject::create()
  */
 public static function create(array $parameters = array())
 {
     // obtain default values
     if (!isset($parameters['packageID'])) {
         $parameters['packageID'] = PACKAGE_ID;
     }
     parent::create($parameters);
 }
 /**
  * @see	\wcf\data\IEditableObject::create()
  */
 public static function create(array $parameters = array())
 {
     $descriptions = array();
     if (isset($parameters['description']) && is_array($parameters['description'])) {
         if (count($parameters['description']) > 1) {
             $descriptions = $parameters['description'];
             $parameters['description'] = '';
         } else {
             $parameters['description'] = reset($parameters['description']);
         }
     }
     $cronjob = parent::create($parameters);
     // save cronjob description
     if (!empty($descriptions)) {
         // set default value
         if (isset($descriptions[''])) {
             $defaultValue = $descriptions[''];
         } else {
             if (isset($descriptions['en'])) {
                 // fallback to English
                 $defaultValue = $descriptions['en'];
             } else {
                 if (isset($descriptions[WCF::getLanguage()->getFixedLanguageCode()])) {
                     // fallback to the language of the current user
                     $defaultValue = $descriptions[WCF::getLanguage()->getFixedLanguageCode()];
                 } else {
                     // fallback to first description
                     $defaultValue = reset($descriptions);
                 }
             }
         }
         // fetch data directly from database during framework installation
         if (!PACKAGE_ID) {
             $sql = "SELECT\t*\n\t\t\t\t\tFROM\twcf" . WCF_N . "_language_category\n\t\t\t\t\tWHERE\tlanguageCategory = ?";
             $statement = WCF::getDB()->prepareStatement($sql);
             $statement->execute(array('wcf.acp.cronjob'));
             $languageCategory = $statement->fetchObject('wcf\\data\\language\\category\\LanguageCategory');
             $languages = new LanguageList();
             $languages->readObjects();
         } else {
             $languages = LanguageFactory::getInstance()->getLanguages();
             $languageCategory = LanguageFactory::getInstance()->getCategory('wcf.acp.cronjob');
         }
         $sql = "INSERT INTO\twcf" . WCF_N . "_language_item\n\t\t\t\t\t\t(languageID, languageItem, languageItemValue, languageCategoryID, packageID)\n\t\t\t\tVALUES\t\t(?, ?, ?, ?, ?)\n\t\t\t\tON DUPLICATE KEY UPDATE languageItemValue = VALUES(languageItemValue)";
         $statement = WCF::getDB()->prepareStatement($sql);
         foreach ($languages as $language) {
             $value = $defaultValue;
             if (isset($descriptions[$language->languageCode])) {
                 $value = $descriptions[$language->languageCode];
             }
             $statement->execute(array($language->languageID, 'wcf.acp.cronjob.description.cronjob' . $cronjob->cronjobID, $value, $languageCategory->languageCategoryID, $cronjob->packageID));
         }
         // update cronjob
         $cronjobEditor = new CronjobEditor($cronjob);
         $cronjobEditor->update(array('description' => 'wcf.acp.cronjob.description.cronjob' . $cronjob->cronjobID));
     }
     return $cronjob;
 }
 /**
  * @see	\wcf\data\IEditableObject::create()
  */
 public static function create(array $parameters = array())
 {
     // obtain default values
     if (!isset($parameters['packageID'])) {
         $parameters['packageID'] = PACKAGE_ID;
     }
     if (!isset($parameters['lastModificationTime'])) {
         $parameters['lastModificationTime'] = TIME_NOW;
     }
     return parent::create($parameters);
 }
 /**
  * @see	wcf\data\IEditableObject::create()
  */
 public static function create(array $parameters = array())
 {
     $userOption = parent::create($parameters);
     // alter the table "wcf".WCF_N."_user_option_value" with this new option
     WCF::getDB()->getEditor()->addColumn('wcf' . WCF_N . '_user_option_value', 'userOption' . $userOption->optionID, self::getColumnDefinition($parameters['optionType']));
     // add the default value to this column
     if (isset($parameters['defaultValue'])) {
         $sql = "UPDATE\twcf" . WCF_N . "_user_option_value\n\t\t\t\tSET\tuserOption" . $userOption->optionID . " = ?";
         $statement = WCF::getDB()->prepareStatement($sql);
         $statement->execute(array($parameters['defaultValue']));
     }
     return $userOption;
 }
 /**
  * @see	\wcf\data\IEditableObject::create()
  */
 public static function create(array $parameters = array())
 {
     // default values
     $parameters['time'] = isset($parameters['time']) ? $parameters['time'] : TIME_NOW;
     $parameters['parentCategoryID'] = isset($parameters['parentCategoryID']) ? $parameters['parentCategoryID'] : 0;
     $parameters['showOrder'] = isset($parameters['showOrder']) ? $parameters['showOrder'] : null;
     // handle show order
     $parameters['showOrder'] = static::getShowOrder($parameters['objectTypeID'], $parameters['parentCategoryID'], $parameters['showOrder']);
     // handle additionalData
     if (!isset($parameters['additionalData'])) {
         $parameters['additionalData'] = serialize(array());
     }
     return parent::create($parameters);
 }
Beispiel #8
0
 /**
  * @see	wcf\data\IEditableObject::create()
  */
 public static function create(array $parameters = array())
 {
     // create salt and password hash
     $parameters['salt'] = StringUtil::getRandomID();
     $parameters['password'] = StringUtil::getDoubleSaltedHash($parameters['password'], $parameters['salt']);
     // create accessToken for AbstractAuthedPage
     $parameters['accessToken'] = StringUtil::getRandomID();
     // handle registration date
     if (!isset($parameters['registrationDate'])) {
         $parameters['registrationDate'] = TIME_NOW;
     }
     $user = parent::create($parameters);
     // create default values for user options
     self::createUserOptions($user->userID);
     return $user;
 }
Beispiel #9
0
 /**
  * @see	\wcf\data\IEditableObject::create()
  */
 public static function create(array $parameters = array())
 {
     $variables = null;
     if (isset($parameters['variables'])) {
         $variables = $parameters['variables'];
         unset($parameters['variables']);
     }
     // default values
     if (!isset($parameters['packageID'])) {
         $parameters['packageID'] = 1;
     }
     if (!isset($parameters['styleDate'])) {
         $parameters['styleDate'] = gmdate('Y-m-d', TIME_NOW);
     }
     // check if no default style is defined
     $sql = "SELECT\tstyleID\n\t\t\tFROM\twcf" . WCF_N . "_style\n\t\t\tWHERE\tisDefault = ?";
     $statement = WCF::getDB()->prepareStatement($sql);
     $statement->execute(array(1));
     $row = $statement->fetchArray();
     // no default style exists
     if ($row === false) {
         $parameters['isDefault'] = 1;
     }
     // save style
     $style = parent::create($parameters);
     $styleEditor = new StyleEditor($style);
     // save variables
     if ($variables !== null) {
         $styleEditor->setVariables($variables);
     }
     // scale preview image
     if (!empty($parameters['image'])) {
         self::scalePreviewImage(WCF_DIR . $parameters['image']);
     }
     return $style;
 }
 /**
  * @see	\wcf\data\IEditableObject::create()
  */
 public static function create(array $parameters = array())
 {
     // calculate show order
     $parameters['showOrder'] = self::getShowOrder($parameters['showOrder']);
     return parent::create($parameters);
 }
Beispiel #11
0
 /**
  * @see wcf\data\IEditableObject::create()
  */
 public static function create(array $parameters = array())
 {
     $variables = null;
     if (isset($parameters['variables'])) {
         $variables = $parameters['variables'];
         unset($parameters['variables']);
     }
     // default values
     if (!isset($parameters['packageID'])) {
         $parameters['packageID'] = PACKAGE_ID;
     }
     if (!isset($parameters['styleDate'])) {
         $parameters['styleDate'] = gmdate('Y-m-d', TIME_NOW);
     }
     // save style
     $style = parent::create($parameters);
     $styleEditor = new StyleEditor($style);
     // save variables
     if ($variables !== null) {
         $styleEditor->setVariables($variables);
     }
     // scale preview image
     if (!empty($parameters['image'])) {
         self::scalePreviewImage(WCF_DIR . $parameters['image']);
     }
     return $style;
 }