/**
  * Handle Write Exceptions.
  * 
  * @global string                       $urlAppend
  * @param  Zend_Search_Lucene_Exception $e
  */
 protected function handleWriteErrors($e) {
     global $tool_content, $pageName, $errorMessage;
     if (preg_match("/too many open files/i", $e->getMessage())) {
         $pageName = 'Open eClass Asynchronous eLearning Platform';
         $tool_content .= "
           <p>The Open eClass asynchronous eLearning platform is not operational.</p>
           <p>This is caused by a possible maximum open files (ulimit) problem for the search engine indexing directory (courses/idx/).</p>
           <p>Please inform the platform administrator.</p>";
         draw_popup();
         exit();
     } else {
         $errorMessage = $e->getMessage();
         require_once 'fatal_error.php';
     }
 }
예제 #2
0
 * Open eClass is an open platform distributed in the hope that it will
 * be useful (without any warranty), under the terms of the GNU (General
 * Public License) as published by the Free Software Foundation.
 * The full license can be read in "/info/license/license_gpl.txt".
 *
 * Contact address: GUnet Asynchronous eLearning Group,
 *                  Network Operations Center, University of Athens,
 *                  Panepistimiopolis Ilissia, 15784, Athens, Greece
 *                  e-mail: info@openeclass.org
 * ======================================================================== 
 */

$require_admin = true;
require_once '../../include/baseTheme.php';
require_once 'include/lib/cronutil.class.php';

$pageName = $logo;
$tool_content .= "
  <p>$langIndexingOptAlert1</p>
  <p>$langIndexingOptAlert2</p>";
draw_popup();

session_write_close();
ignore_user_abort(true);
CronUtil::flush();

require_once 'modules/search/indexer.class.php';
$idx = new Indexer();
set_time_limit(0);
$idx->getIndex()->optimize();