Exemplo n.º 1
0
 /**
  * Log a message to the logger
  *
  * @param string $message The message to log
  * @param string $category [optional] The message category (default "main")
  * @param integer $level [optional] The loglevel
  */
 public static function log($message, $category = 'main', $level = 1)
 {
     if (!self::$_logging_enabled) {
         return false;
     }
     if (self::$_loglevel > $level) {
         return false;
     }
     if (self::$_cli_log_to_screen_in_debug_mode && Context::isCLI() && Context::isDebugMode() && class_exists('\\thebuggenie\\core\\framework\\cli\\Command')) {
         \thebuggenie\core\framework\cli\Command::cli_echo(mb_strtoupper(self::getLevelName($level)), 'white', 'bold');
         \thebuggenie\core\framework\cli\Command::cli_echo(" [{$category}] ", 'green', 'bold');
         \thebuggenie\core\framework\cli\Command::cli_echo("{$message}\n");
     }
     if (self::$_logonajaxcalls || Context::getRequest()->isAjaxCall()) {
         if (self::$_logfile !== null) {
             file_put_contents(self::$_logfile, mb_strtoupper(self::getLevelName($level)) . " [{$category}] {$message}\n", FILE_APPEND);
         }
         $time_msg = Context::isDebugMode() ? ($load_time = Context::getLoadtime()) >= 1 ? round($load_time, 2) . ' seconds' : round($load_time * 1000, 3) . ' ms' : '';
         self::$_entries[] = array('category' => $category, 'time' => $time_msg, 'message' => $message, 'level' => $level);
         self::$_categorized_entries[$category][] = array('time' => $time_msg, 'message' => $message, 'level' => $level);
     }
 }
Exemplo n.º 2
0
 public function loadArticles($namespace = '', $overwrite = true, $scope = null)
 {
     $scope = framework\Context::getScope()->getID();
     $namespace = mb_strtolower($namespace);
     $_path_handle = opendir(THEBUGGENIE_MODULES_PATH . 'publish' . DS . 'fixtures' . DS);
     while ($original_article_name = readdir($_path_handle)) {
         if (mb_strpos($original_article_name, '.') === false) {
             $article_name = mb_strtolower($original_article_name);
             $imported = false;
             $import = false;
             if ($namespace) {
                 if (mb_strpos(urldecode($article_name), "{$namespace}:") === 0 || mb_strpos(urldecode($article_name), "category:") === 0 && mb_strpos(urldecode($article_name), "{$namespace}:") === 9) {
                     $import = true;
                 }
             } else {
                 if (mb_strpos(urldecode($article_name), "category:help:") === 0) {
                     $name_test = mb_substr(urldecode($article_name), 14);
                 } elseif (mb_strpos(urldecode($article_name), "category:") === 0) {
                     $name_test = mb_substr(urldecode($article_name), 9);
                 } else {
                     $name_test = urldecode($article_name);
                 }
                 if (mb_strpos($name_test, ':') === false) {
                     $import = true;
                 }
             }
             if ($import) {
                 if (framework\Context::isCLI()) {
                     \thebuggenie\core\framework\cli\Command::cli_echo('Saving ' . urldecode($original_article_name) . "\n");
                 }
                 if ($overwrite) {
                     Articles::getTable()->deleteArticleByName(urldecode($original_article_name));
                 }
                 if (Articles::getTable()->getArticleByName(urldecode($original_article_name)) === null) {
                     $content = file_get_contents(THEBUGGENIE_MODULES_PATH . 'publish' . DS . 'fixtures' . DS . $original_article_name);
                     Article::createNew(urldecode($original_article_name), $content, $scope, array('overwrite' => $overwrite, 'noauthor' => true));
                     $imported = true;
                 }
                 framework\Event::createNew('publish', 'fixture_article_loaded', urldecode($original_article_name), array('imported' => $imported))->trigger();
             }
         }
     }
 }