Example #1
0
 public function getPreparedName($dirUnderWebroot = false)
 {
     if (!$this->_preparedName) {
         if (!$dirUnderWebroot) {
             $dirUnderWebroot = self::DIR_UNDER_WEBROOT;
         }
         $translitedName = Translit::file($this->baseName);
         // by default
         $fileName = '/' . $dirUnderWebroot . '/' . $translitedName . '.' . $this->extension;
         $rand_dir = rand(1, 100);
         $full_dir = Yii::getAlias('@webroot') . '/' . $dirUnderWebroot . '/' . $rand_dir . '/';
         if (!is_dir($full_dir)) {
             mkdir($full_dir);
         }
         if (is_dir($full_dir)) {
             $fileName = '/' . $dirUnderWebroot . '/' . $rand_dir . '/' . $translitedName . '.' . $this->extension;
             //now find duplicates
             if (is_file(Yii::getAlias('@webroot') . $fileName)) {
                 $cnt = 1;
                 $newFileName = '/' . $dirUnderWebroot . '/' . $rand_dir . '/' . $translitedName . '(' . $cnt . ').' . $this->extension;
                 while (is_file(Yii::getAlias('@webroot') . $newFileName)) {
                     $cnt++;
                     $newFileName = '/' . $dirUnderWebroot . '/' . $rand_dir . '/' . $translitedName . '(' . $cnt . ').' . $this->extension;
                 }
                 $fileName = $newFileName;
             }
         }
         $this->_preparedName = $fileName;
     }
     return $this->_preparedName;
 }
Example #2
0
 protected function _fillSeourl()
 {
     if (empty($this->title)) {
         $this->title = $this->name;
     }
     if (empty($this->seourl)) {
         $this->seourl = Translit::url($this->title);
     }
 }
Example #3
0
 protected function fillSeourl(StructureRecord $model)
 {
     if (empty($model->title)) {
         $model->title = $model->label;
     }
     if (empty($model->seourl)) {
         $model->seourl = Translit::url($model->title);
     }
 }