Example #1
0
 public static function add($f)
 {
     $foo = new Upload($f);
     if ($foo->uploaded) {
         $foo->Process(TMPFILES);
     }
     if ($foo->processed) {
         $fname = $foo->file_src_name_body;
         $fpath = TMPFILES . DS . $fname;
         $zip = new ZipArchive();
         $res = $zip->open(TMPFILES . DS . $foo->file_src_name);
         if ($res === TRUE) {
             $zip->extractTo($fpath . DS);
             $zip->close();
             $pack = json_decode(file_get_contents($fpath . DS . 'package.json'), true);
             if (count($pack['controllers']) > 0) {
                 foreach ($pack['controllers'] as $c) {
                     File::copy($fpath . DS . 'controllers' . DS . $c, CONTROLLERS . DS . $c);
                 }
             }
             if (count($pack['views']) > 0) {
                 foreach ($pack['views'] as $c) {
                     File::copy($fpath . DS . 'views' . DS . $c, VIEWS . DS . $c);
                 }
             }
             if (count($pack['langs']) > 0) {
                 foreach ($pack['langs'] as $c) {
                     File::copy($fpath . DS . 'lang' . DS . $c, LANGS . DS . $c);
                 }
             }
             if (count($pack['libs']) > 0) {
                 foreach ($pack['libs'] as $c) {
                     File::copy($fpath . DS . 'lib' . DS . $c, LIB . DS . $c);
                 }
             }
             if (count($pack['filters']) > 0) {
                 foreach ($pack['filters'] as $c) {
                     File::copy($fpath . DS . 'filters' . DS . $c, FILTER . DS . $c);
                 }
             }
             File::copy($fpath . DS . 'package.json', CONFPLUGINS . DS . $pack['name'] . '.json');
             File::copy($fpath . DS . 'routes.php', ROOT . DS . "routes" . DS . $pack['name'] . '.routes.php');
             File::removedir($fpath);
             File::remove(TMPFILES . DS . $foo->file_src_name);
         } else {
             return false;
         }
     }
     return true;
 }