getByKey() публичный статический Метод

public static getByKey ( string $key ) : self
$key string
Результат self
 public function installProperties()
 {
     $defProperty = Property\Predefined::getByKey('assigned_language');
     if (!$defProperty instanceof Property\Predefined) {
         $languages = \Pimcore\Tool::getValidLanguages();
         $data = 'all,';
         foreach ($languages as $language) {
             $data .= $language . ',';
         }
         $data = rtrim($data, ',');
         $property = new Property\Predefined();
         $property->setType('select');
         $property->setName('Assigned Language');
         $property->setKey('assigned_language');
         $property->setDescription('set a specific language which lucene search should respect while crawling.');
         $property->setCtype('asset');
         $property->setData('all');
         $property->setConfig($data);
         $property->setInheritable(FALSE);
         $property->save();
     }
 }
Пример #2
0
 /**
  * @static
  * @param  $props
  * @return array
  */
 public static function minimizePropertiesForEditmode($props)
 {
     $properties = array();
     foreach ($props as $key => $p) {
         //$p = object2array($p);
         $allowedProperties = array("key", "o_key", "filename", "path", "o_path", "id", "o_id", "o_type", "type");
         if ($p->getData() instanceof Document || $p->getData() instanceof Asset || $p->getData() instanceof Object\AbstractObject) {
             $pa = array();
             $vars = get_object_vars($p->getData());
             foreach ($vars as $k => $value) {
                 if (in_array($k, $allowedProperties)) {
                     $pa[$k] = $p->getData()->{$k};
                 }
             }
             // clone it because of caching
             $tmp = clone $p;
             $tmp->setData($pa);
             $properties[$key] = object2array($tmp);
         } else {
             $properties[$key] = object2array($p);
         }
         // add config from predefined properties
         if ($p->getName() && $p->getType()) {
             $predefined = Model\Property\Predefined::getByKey($p->getName());
             if ($predefined && $predefined->getType() == $p->getType()) {
                 $properties[$key]["config"] = $predefined->getConfig();
             }
         }
     }
     return $properties;
 }