cfoe
2012-07-11 a9c5c19aee8db8f4aa301eb9c26a498f2fd3ec0c
server/lib/classes/system.inc.php
@@ -1271,6 +1271,32 @@
      }
      
   }
   //* Check if a application is installed
   function is_installed($appname) {
      exec('which '.escapeshellcmd($appname).' 2> /dev/null',$out,$returncode);
      if(isset($out[0]) && stristr($out[0],$appname) && $returncode == 0) {
         return true;
      } else {
         return false;
      }
   }
   function web_folder_protection($document_root,$protect) {
      global $app,$conf;
      //* load the server configuration options
      $app->uses('getconf');
      $web_config = $app->getconf->get_server_config($conf['server_id'], 'web');
      if($protect == true && $web_config['web_folder_protection'] == 'y') {
         //* Add protection
         if($document_root != '' && $document_root != '/' && strlen($document_root) > 6 && !stristr($document_root,'..')) exec('chattr +i '.escapeshellcmd($document_root));
      } else {
         //* Remove protection
         if($document_root != '' && $document_root != '/' && strlen($document_root) > 6 && !stristr($document_root,'..')) exec('chattr -i '.escapeshellcmd($document_root));
      }
   }
}
?>