Proyectos de Subversion Moodle

Rev

| Ultima modificación | Ver Log |

Rev Autor Línea Nro. Línea
1 efrain 1
<?php
2
// This file is part of Moodle - http://moodle.org/
3
//
4
// Moodle is free software: you can redistribute it and/or modify
5
// it under the terms of the GNU General Public License as published by
6
// the Free Software Foundation, either version 3 of the License, or
7
// (at your option) any later version.
8
//
9
// Moodle is distributed in the hope that it will be useful,
10
// but WITHOUT ANY WARRANTY; without even the implied warranty of
11
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
12
// GNU General Public License for more details.
13
//
14
// You should have received a copy of the GNU General Public License
15
// along with Moodle.  If not, see <http://www.gnu.org/licenses/>.
16
 
17
/**
18
 * Configurable Reports
19
 * A Moodle block for creating Configurable Reports
20
 * @package blocks
21
 * @author: Juan leyva <http://www.twitter.com/jleyvadelgado>
22
 * @date: 2009
23
 */
24
 
25
define('AJAX_SCRIPT', true);
26
require(dirname(dirname(dirname(__FILE__))).'/config.php');
27
require_once($CFG->libdir . '/filelib.php');
28
 
29
$action = required_param('action', PARAM_ALPHA);
30
 
31
if (!$userandrepo = get_config('block_configurable_reports', 'crrepository')) {
32
    echo json_encode(array());
33
    die;
34
}
35
 
36
$github = new \block_configurable_reports\github;
37
$github->set_repo($userandrepo);
38
 
39
if ($action == 'listreports') {
40
    if ($res = $github->get('/contents')) {
41
        $data = json_decode($res);
42
        if (!is_array($data)) {
43
            echo json_encode(array());
44
            die;
45
        }
46
        foreach ($data as $key => $d) {
47
            if ($d->type != 'dir') {
48
                unset($data[$key]);
49
            }
50
        }
51
        echo json_encode($data);
52
        die;
53
    }
54
} else if ($action == 'listcategory') {
55
    $category = required_param('category', PARAM_RAW);
56
    if ($res = $github->get('/contents/'.$category)) {
57
        $data = json_decode($res);
58
        foreach ($data as $key => $d) {
59
            if ($d->type != 'file') {
60
                unset($data[$key]);
61
            }
62
        }
63
        echo json_encode($data);
64
        die;
65
    }
66
}
67
echo json_encode(array());