コード例 #1
0
ファイル: start.php プロジェクト: cyrixhero/Elgg
/**
 * Log the events and plugin hooks
 */
function developers_log_events($name, $type)
{
    // filter out some very common events
    if ($name == 'view' || $name == 'display' || $name == 'log' || $name == 'debug') {
        return;
    }
    if ($name == 'session:get' || $name == 'validate') {
        return;
    }
    // 0 => this function
    // 1 => call_user_func_array
    // 2 => hook class trigger
    $stack = debug_backtrace();
    if (isset($stack[2]['class']) && $stack[2]['class'] == 'Elgg\\EventsService') {
        $event_type = 'Event';
    } else {
        $event_type = 'Plugin hook';
    }
    if ($stack[3]['function'] == 'elgg_trigger_event' || $stack[3]['function'] == 'elgg_trigger_plugin_hook') {
        $index = 4;
    } else {
        $index = 3;
    }
    if (isset($stack[$index]['class'])) {
        $function = $stack[$index]['class'] . '::' . $stack[$index]['function'] . '()';
    } else {
        $function = $stack[$index]['function'] . '()';
    }
    if ($function == 'require_once()' || $function == 'include_once()') {
        $function = $stack[$index]['file'];
    }
    $msg = elgg_echo('developers:event_log_msg', array($event_type, $name, $type, $function));
    elgg_dump($msg, false);
    unset($stack);
}
コード例 #2
0
ファイル: elgglib.php プロジェクト: nogsus/Elgg
/**
 * Display or log a message.
 *
 * If $level is >= to the debug setting in {@link $CONFIG->debug}, the
 * message will be sent to {@link elgg_dump()}.  Messages with lower
 * priority than {@link $CONFIG->debug} are ignored.
 *
 * {@link elgg_dump()} outputs all levels but NOTICE to screen by default.
 *
 * @note No messages will be displayed unless debugging has been enabled.
 *
 * @param string $message User message
 * @param string $level   NOTICE | WARNING | ERROR | DEBUG
 *
 * @return bool
 * @since 1.7.0
 * @todo This is complicated and confusing.  Using int constants for debug levels will
 * make things easier.
 */
function elgg_log($message, $level = 'NOTICE')
{
    global $CONFIG;
    // only log when debugging is enabled
    if (isset($CONFIG->debug)) {
        // debug to screen or log?
        $to_screen = !($CONFIG->debug == 'NOTICE');
        switch ($level) {
            case 'ERROR':
                // always report
                elgg_dump("{$level}: {$message}", $to_screen, $level);
                break;
            case 'WARNING':
            case 'DEBUG':
                // report except if user wants only errors
                if ($CONFIG->debug != 'ERROR') {
                    elgg_dump("{$level}: {$message}", $to_screen, $level);
                }
                break;
            case 'NOTICE':
            default:
                // only report when lowest level is desired
                if ($CONFIG->debug == 'NOTICE') {
                    elgg_dump("{$level}: {$message}", FALSE, $level);
                }
                break;
        }
        return TRUE;
    }
    return FALSE;
}
コード例 #3
0
ファイル: elgglib.php プロジェクト: nhunaro/Elgg
/**
 * Sends a notice about deprecated use of a function, view, etc.
 *
 * This function either displays or logs the deprecation message,
 * depending upon the deprecation policies in {@link CODING.txt}.
 * Logged messages are sent with the level of 'WARNING'. Only admins
 * get visual deprecation notices. When non-admins are logged in, the
 * notices are sent to PHP's log through elgg_dump().
 *
 * A user-visual message will be displayed if $dep_version is greater
 * than 1 minor releases lower than the current Elgg version, or at all
 * lower than the current Elgg major version.
 *
 * @note This will always at least log a warning.  Don't use to pre-deprecate things.
 * This assumes we are releasing in order and deprecating according to policy.
 *
 * @see CODING.txt
 *
 * @param string $msg             Message to log / display.
 * @param string $dep_version     Human-readable *release* version: 1.7, 1.8, ...
 * @param int    $backtrace_level How many levels back to display the backtrace.
 *                                Useful if calling from functions that are called
 *                                from other places (like elgg_view()). Set to -1
 *                                for a full backtrace.
 *
 * @return bool
 * @since 1.7.0
 */
function elgg_deprecated_notice($msg, $dep_version, $backtrace_level = 1)
{
    // if it's a major release behind, visual and logged
    // if it's a 1 minor release behind, visual and logged
    // if it's for current minor release, logged.
    // bugfixes don't matter because we are not deprecating between them
    if (!$dep_version) {
        return false;
    }
    $elgg_version = get_version(true);
    $elgg_version_arr = explode('.', $elgg_version);
    $elgg_major_version = (int) $elgg_version_arr[0];
    $elgg_minor_version = (int) $elgg_version_arr[1];
    $dep_major_version = (int) $dep_version;
    $dep_minor_version = 10 * ($dep_version - $dep_major_version);
    $visual = false;
    if ($dep_major_version < $elgg_major_version || $dep_minor_version < $elgg_minor_version) {
        $visual = true;
    }
    $msg = "Deprecated in {$dep_major_version}.{$dep_minor_version}: {$msg}";
    if ($visual && elgg_is_admin_logged_in()) {
        register_error($msg);
    }
    // Get a file and line number for the log. Never show this in the UI.
    // Skip over the function that sent this notice and see who called the deprecated
    // function itself.
    $msg .= " Called from ";
    $stack = array();
    $backtrace = debug_backtrace();
    // never show this call.
    array_shift($backtrace);
    $i = count($backtrace);
    foreach ($backtrace as $trace) {
        $stack[] = "[#{$i}] {$trace['file']}:{$trace['line']}";
        $i--;
        if ($backtrace_level > 0) {
            if ($backtrace_level <= 1) {
                break;
            }
            $backtrace_level--;
        }
    }
    $msg .= implode("<br /> -> ", $stack);
    elgg_dump($msg, elgg_is_admin_logged_in(), 'WARNING');
    return true;
}
コード例 #4
0
/**
 * Log the events and plugin hooks
 */
function developers_log_events($name, $type)
{
    // filter out some very common events
    if ($name == 'view' || $name == 'display' || $name == 'log' || $name == 'debug') {
        return;
    }
    if ($name == 'session:get' || $name == 'validate') {
        return;
    }
    $stack = debug_backtrace();
    if ($stack[2]['function'] == 'elgg_trigger_event') {
        $event_type = 'Event';
    } else {
        $event_type = 'Plugin hook';
    }
    $function = $stack[3]['function'] . '()';
    if ($function == 'require_once' || $function == 'include_once') {
        $function = $stack[3]['file'];
    }
    $msg = elgg_echo('developers:event_log_msg', array($event_type, $name, $type, $function));
    elgg_dump($msg, false, 'WARNING');
    unset($stack);
}
コード例 #5
0
ファイル: embed.php プロジェクト: juho-jaakkola/elgg-h5p
<?php

$entity = elgg_extract('entity', $vars);
$lang = elgg_extract('lang', $vars);
$content = elgg_extract('content', $vars);
//$scripts = elgg_extract('scripts', $vars);
$styles = elgg_extract('styles', $vars);
$integration = elgg_extract('integration', $vars);
$integration = h5p_get_core_settings();
$integration['contents']["cid-{$entity->guid}"] = array();
// Get core scripts
foreach (H5PCore::$scripts as $script) {
    elgg_load_js($script);
    elgg_dump($script);
}
$styles = array();
?>

<!doctype html>
<html lang="<?php 
print $lang;
?>
" class="h5p-iframe">
<head>
  <meta charset="utf-8">
  <title><?php 
print $content['title'];
?>
</title>
  <?php 
for ($i = 0, $s = count($scripts); $i < $s; $i++) {
コード例 #6
0
ファイル: functions.php プロジェクト: socialweb/PiGo
function generate_graph($anon, $_relationship)
{
    global $anonymize;
    $anonymize = $anon;
    global $relationship;
    $relationship = $_relationship;
    global $temp_edges;
    global $temp_users;
    $temp_edges = tempnam(sys_get_temp_dir(), 'edges_temp');
    $temp_users = tempnam(sys_get_temp_dir(), 'users_temp');
    global $users_file;
    global $edges_file;
    $cad = "";
    $users_file = fopen($temp_users, 'w+');
    $edges_file = fopen($temp_edges, 'w+');
    fwrite($users_file, CABECERAS);
    fwrite($users_file, ATRIBS);
    if ($relationship == "member") {
        // get groups
        $groups = elgg_get_entities(array('types' => 'group', 'limit' => 0));
        foreach ($groups as $group) {
            $temp = "\n<node id=\"" . $group->guid . "\" label=\"" . $group->name . "\" start=\"" . date('Y-m-d', $group->time_created) . "\">";
            $temp .= '<attvalues><attvalue for="3" value="group"/></attvalues>';
            $temp .= '</node>';
            $i++;
            fwrite($users_file, $temp);
        }
    }
    elgg_get_entities(array('types' => 'user', 'callback' => 'process_user', 'limit' => 0));
    fwrite($edges_file, "\n\t</edges>\n</graph>\n</gexf>\n");
    /**************************    **************************/
    fwrite($users_file, "\n\t<edges>\n\t");
    fclose($edges_file);
    $edges_file = fopen($temp_edges, 'r');
    while ($cad = fgets($edges_file)) {
        fwrite($users_file, $cad);
    }
    fclose($users_file);
    fclose($edges_file);
    $grafo = sys_get_temp_dir() . "/graph.gexf";
    if (file_exists($grafo)) {
        unlink($grafo);
    }
    //elgg_dump("\ndirectorio temporal donde almacena grafo.gexf: ".sys_get_temp_dir()."\n");
    if (!rename($temp_users, $grafo)) {
        elgg_dump("\n ERROR AL COPIAR EL ARCHIVO \n");
    }
    unlink($temp_users);
    unlink($temp_edges);
}
コード例 #7
0
/**
 * Log a debug message
 *
 * @param string $message Debug message
 * @return void
 */
function elgg_solr_debug_log($message)
{
    if (elgg_get_config('elgg_solr_debug') || elgg_get_config('debug') == 'NOTICE' || elgg_get_config('debug') == 'INFO' || get_input('debug', false)) {
        elgg_dump($message);
    }
}
コード例 #8
0
ファイル: h5p_file.php プロジェクト: juho-jaakkola/elgg-h5p
<?php

$entity = elgg_extract('entity', $vars);
$entity->lang = 'en';
elgg_dump($entity->getFilenameOnFilestore());
/*
$content = elgg_view('h5p/embed', array(
	'lang' => $entity->lang,
	'content' => $entity->content,
	'scripts' => $entity->scripts,
	'styles' => $entity->styles,
	'integration' => $entity->integration,
));
*/
$html = 'TODO';
/*
h5p_add_files_and_settings($node, $embed);
if ($embed === 'div') {
	$html = '<div class="h5p-content" data-content-id="' .  $content_id . '"></div>';
} else {
	$html = '<div class="h5p-iframe-wrapper"><iframe id="h5p-iframe-' . $content_id . '" class="h5p-iframe" data-content-id="' . $content_id . '" style="height:1px" src="about:blank" frameBorder="0" scrolling="no"></iframe></div>';
}
*/
$metadata = '';
if (!elgg_in_context('widgets')) {
    // only show entity menu outside of widgets
    $metadata = elgg_view_menu('entity', array('entity' => $vars['entity'], 'handler' => \H5P\File::SUBTYPE, 'sort_by' => 'priority', 'class' => 'elgg-menu-hz'));
}
$params = array('entity' => $entity, 'metadata' => $metadata, 'title' => $entity->title, 'subtitle' => $entity->title, 'content' => $html);
$params = $params + $vars;
$list_body = elgg_view('object/elements/summary', $params);