Example #1
0
 /**
  * Function to get instance by using id
  * @param <Integer> $extensionId
  * @param <String> $fileName
  * @return <Settings_ModuleManager_Extension_Model> $extension Model
  */
 public static function getInstanceById($extensionId, $fileName = false)
 {
     $uploadDir = self::getUploadDirectory();
     if ($fileName) {
         if (is_dir($uploadDir)) {
             $uploadFileName = "{$uploadDir}/{$fileName}";
             checkFileAccess(self::getUploadDirectory());
             $extensionModel = new self();
             $extensionModel->setId($extensionId)->setFileName($fileName);
             return $extensionModel;
         }
     } else {
         if (!is_dir($uploadDir)) {
             mkdir($uploadDir);
         }
         $uploadFile = 'usermodule_' . time() . '.zip';
         $uploadFileName = "{$uploadDir}/{$uploadFile}";
         checkFileAccess(self::getUploadDirectory());
         $packageAvailable = Settings_ModuleManager_Extension_Model::download($extensionId, $uploadFileName);
         if ($packageAvailable) {
             $extensionModel = new self();
             $extensionModel->setId($extensionId)->setFileName($uploadFile);
             return $extensionModel;
         }
     }
     return false;
 }