Marius Burkard
2016-04-19 b2cee83e8894e89fd3e0793c84fb92a8cf928613
interface/lib/classes/remote.d/aps.inc.php
@@ -39,13 +39,15 @@
   {
      global $app;
   
      if(!$this->checkPerm($session_id, 'sites_aps_update_package')) {
      if(!$this->checkPerm($session_id, 'sites_aps_update_package_list')) {
         $this->server->fault('permission_denied', 'You do not have the permissions to access this function.');
         return false;
      }
      require_once '../../../lib/config.inc.php';
      $app->load('aps_crawler');
      $aps = new ApsCrawler($app, false); // true = Interface mode, false = Server mode
      $aps = new ApsCrawler($app, true); // true = Interface mode, false = Server mode
      $aps->startCrawler();
      $aps->parseFolderToDB();
      $aps->fixURLs();
@@ -53,7 +55,7 @@
      return true;
   }
   
   public function sites_aps_available_packages_list($session_id, $params)
   public function sites_aps_available_packages_list($session_id, $params = array())
   {
      global $app;
   
@@ -198,6 +200,36 @@
      return $settings;
   }
   
   public function sites_aps_change_package_status($session_id, $primary_id, $params)
   {
      global $app;
      if(!$this->checkPerm($session_id, 'sites_aps_change_package_status')) {
         $this->server->fault('permission_denied', 'You do not have the permissions to access this function.');
         return false;
      }
      $app->load('aps_base');
      $app->load('aps_guicontroller');
      $gui = new ApsGUIController($app);
      // Make sure an integer ID is given
      if (!isset($primary_id) || !$gui->isValidPackageID($primary_id, true)) {// always adminflag
         $this->server->fault('package_error', 'The given Package ID is not valid.');
         return false;
      }
      if(!isset($params['package_status']) || (($params['package_status'] != PACKAGE_ENABLED) && ($params['package_status'] != PACKAGE_LOCKED))) {
         $this->server->fault('package_error', 'Wrong new status: '.$params['package_status']);
         return false;
      }
      $sql  = "UPDATE aps_packages SET package_status = ? WHERE id = ?";
      $app->db->query($sql, $params['package_status'], $app->functions->intval($primary_id));
      return true;
   }
   public function sites_aps_install_package($session_id, $primary_id, $params)
   {
      global $app;
@@ -241,8 +273,15 @@
         return false;
      }
   
      $sql = "SELECT * FROM web_domain WHERE domain = '".$app->db->quote($params['main_domain'])."'";
      $domain = $app->db->queryOneRecord($sql);
      if (substr($params['main_domain'], 0, 4) == 'www.') {
         $domain = substr($params['main_domain'], 4);
         $sql = "SELECT * FROM web_domain WHERE domain = ? AND subdomain=?";
         $domain = $app->db->queryOneRecord($sql, $domain, 'www');
      }
      else {
         $sql = "SELECT * FROM web_domain WHERE domain = ?";
         $domain = $app->db->queryOneRecord($sql, $params['main_domain']);
      }
   
      if (!$domain) {
         $this->server->fault('invalid parameters', 'No valid domain given.');
@@ -269,8 +308,8 @@
         return false;
      }
   
      $sql  = "SELECT * FROM aps_instances WHERE id = ".$app->functions->intval($primary_id);
      $result = $app->db->queryOneRecord($sql);
      $sql  = "SELECT * FROM aps_instances WHERE id = ?";
      $result = $app->db->queryOneRecord($sql, $app->functions->intval($primary_id));
      return $result;
   }
   
@@ -283,8 +322,8 @@
         return false;
      }
   
      $sql  = "SELECT * FROM aps_instances_settings WHERE instance_id = ".$app->functions->intval($primary_id);
      $result = $app->db->queryAllRecords($sql);
      $sql  = "SELECT * FROM aps_instances_settings WHERE instance_id = ?";
      $result = $app->db->queryAllRecords($sql, $app->functions->intval($primary_id));
      return $result;
   }
   
@@ -301,8 +340,8 @@
      $gui = new ApsGUIController($app);
   
      // Check if Instance exists
      $sql  = "SELECT * FROM aps_instances WHERE id = ".$app->functions->intval($primary_id);
      $result = $app->db->queryOneRecord($sql);
      $sql  = "SELECT * FROM aps_instances WHERE id = ?";
      $result = $app->db->queryOneRecord($sql, $primary_id);
   
      if (!$result) {
         $this->server->fault('instance_error', 'No valid instance id given.');