コード例 #1
0
 * Function: This script uses a combination of the Cambridge University Fitzwilliam Museum API (to query for a list of responses) and
 * screen scraping to parse coin type reference numbers and measurements in order to generate Nomisma-compliant RDF
 *****/
//set user agent
ini_set('user_agent', 'Nomisma.org/PHP Harvesting');
//array of queries
$queries = array('crro' => 'coin AND "Roman Republic"', 'pella' => '"Alexander III" AND coin');
$project = 'pella';
$api = 'http://data.fitzmuseum.cam.ac.uk/api/?';
$params = array('query' => $queries[$project], 'size' => 100, 'from' => 0);
$records = array();
$coinTypes = array();
parse_response($api, $params);
//var_dump($records);
//after the API pages have been parsed, then process the resulting records array into Nomisma-conformant RDF
generate_csv($records, $project);
generate_rdf($records, $project);
function parse_response($api, $params)
{
    global $records;
    $page = $params['from'] / $params['size'] + 1;
    echo "Page {$page}\n";
    //compare the individual request parameters into k=>v pairs to the URL
    $qparams = array();
    foreach ($params as $k => $v) {
        $qparams[] = "{$k}=" . urlencode($v);
    }
    $service = $api . implode('&', $qparams);
    //request JSON from API
    $json = file_get_contents($service);
    $data = json_decode($json);
コード例 #2
0
            echo $req;
        } elseif ($csv == 1) {
            generate_csv($req, "Filiere", "Puissance installée");
        } else {
            generate_json($req, 3);
        }
    }
}
###############################################################################
# JSON MOT_EV_CONSO
###############################################################################
array_push($json['ELECT_VEHICLE'], "mot_ev_conso");
if ($type == "mot_ev_conso") {
    if ($help == 1 or $id === null) {
        echo '<b>MANUEL MOT_EV_CONSO</b><br>';
        echo '<b>OBJECTIF</b> : Fo <br> ';
        echo '<b>INPUT</b> : i<br>';
        echo '<b>OUTPUT</b> :  <br>';
    } else {
        $req = 'select conso
				from mot_conso_maille
				where id_maille=' . $id . '';
        if ($sql == 1) {
            echo $req;
        } elseif ($csv == 1) {
            generate_csv($req, "Filiere", "Puissance installée");
        } else {
            generate_json($req, 1);
        }
    }
}
コード例 #3
0
ファイル: teacher.php プロジェクト: bcvincent/ae_reports
    $temparray['days inactive'] = get_user_timeinactive($user->id);
    $user_data[$array_count] = $temparray;
    $tot_diff->add($timeontask_int);
    $array_count++;
}
unset($user);
$tot_seconds = $tot_diff->getTimestamp() - $tot_start->getTimestamp();
$avg_seconds = $tot_seconds / sizeof($users);
switch ($type) {
    case "csv":
        header("Content-type: text/csv");
        header("Content-Disposition: attachment; filename=report.csv");
        header("Pragma: no-cache");
        header("Expires: 0");
        //echo generate_csv($user_data,"id",false);
        echo generate_csv($user_data, "id");
        echo "Total Records," . sizeof($users) . PHP_EOL;
        echo "Total Time on Task," . gmdate("H:i:s", $avg_seconds) . PHP_EOL;
        break;
    default:
        $PAGE->set_url('/report/ae_reports/timeontask.php');
        $PAGE->requires->css($cssurl);
        $PAGE->requires->js($tablejsurl);
        $PAGE->requires->js($accjsurl);
        $PAGE->set_context(context_system::instance());
        $PAGE->set_pagelayout('standard');
        $PAGE->set_title($page_title);
        $PAGE->set_heading($page_heading);
        $PAGE->navbar->add("AE Reports", $index_url);
        $PAGE->navbar->add("Time on Task", $this_url);
        echo $OUTPUT->header();
コード例 #4
0
ファイル: registration.php プロジェクト: kienv/mahara
/**
 * Create logins by institution table for the site statistics page
 *
 * @param int $limit     Limit results
 * @param int $offset    Starting offset
 * @param string $sort   DB Column to sort by
 * @param string/int $sortdesc  The direction to sort the $sort column by
 * @param string $start  The start date to filter results by - format 'YYYY-MM-DD HH:MM:SS'
 * @param string $end    The end date to filter results by - format 'YYYY-MM-DD HH:MM:SS'
 *
 * @results array Results containing the html / pagination data
 */
function institution_logins_stats_table($limit, $offset, $sort, $sortdesc, $start, $end)
{
    global $USER;
    $rawdata = users_active_data(null, null, $sort, $sortdesc, $start, $end);
    $count = $rawdata ? count($rawdata) : 0;
    $pagination = build_pagination(array('id' => 'stats_pagination', 'url' => get_config('wwwroot') . 'admin/statistics.php?type=logins&start=' . date('Y-m-d', strtotime($start)) . '&end=' . date('Y-m-d', strtotime($end)), 'jsonscript' => 'admin/statistics.json.php', 'datatable' => 'statistics_table', 'count' => $count, 'limit' => $limit, 'offset' => $offset, 'setlimit' => true));
    $result = array('count' => $count, 'tablerows' => '', 'pagination' => $pagination['html'], 'pagination_js' => $pagination['javascript']);
    if ($count < 1) {
        return $result;
    }
    $csvfields = array('name', 'displayname', 'count_logins', 'count_active');
    $USER->set_download_file(generate_csv($rawdata, $csvfields), 'userloginstatistics.csv', 'text/csv');
    $result['csv'] = true;
    $data = array_slice($rawdata, $offset, $limit);
    $smarty = smarty_core();
    $smarty->assign('data', $data);
    $result['tablerows'] = $smarty->fetch('admin/userloginsummary.tpl');
    return $result;
}
コード例 #5
0
ファイル: out.php プロジェクト: akameco/cps_stay
    @mkdir($tmp_zip_dir);
    // zip module
    $zip = new ZipArchive();
    $zipname = $dir_name . '.zip';
    $zip_path = $tmp_zip_dir . $zipname;
    $filenames = array();
    if (!file_exists($zip_path)) {
        if ($zip->open($zip_path, ZipArchive::CREATE) !== TRUE) {
            die('cannot open zipobj');
        }
        $filenames = array();
        $start = 1;
        if ($year == date('Y')) {
            $start = date('m');
        }
        foreach (range($start, 12) as $m) {
            $csv = generate_csv($univ_id, $user_id, $year, $m, $room, substr($room, 0, 3), $teacher);
            $filename = "{$dir_name}/demand_{$year}_{$m}_{$user_id}_{$lab}.CSV";
            $tmpfilename = $tmp_zip_dir . $m . '.CSV';
            $filenames[] = $tmpfilename;
            file_put_contents($tmpfilename, $csv);
            $zip->addFile($tmpfilename, $filename);
        }
        $zip->close();
    }
    header('Pragma: public');
    header("Content-Type: application/octet-stream");
    header("Content-Disposition: attachment; filename=" . $zipname);
    readfile($zip_path);
}
//@rmdir($tmp_zip_dir);
コード例 #6
0
ファイル: formmaker.php プロジェクト: ankaau/GathBandhan
     add_query();
     break;
 case 'edit_query':
     edit_query();
     break;
 case 'db_tables':
     db_tables();
     break;
 case 'show_stats':
     show_stats();
     break;
 case 'generate_xml':
     generate_xml();
     break;
 case 'generate_csv':
     generate_csv();
     break;
 case 'paypal_info':
     paypal_info();
     break;
 case 'default':
     setdefault();
     break;
 case 'product_option':
     product_option();
     break;
 case 'preview':
     preview_formmaker();
     break;
 case 'edit_css':
     edit_css();
コード例 #7
0
ファイル: registration.php プロジェクト: agwells/Mahara-1
function institution_comparison_stats_table($limit, $offset, $sort, $sortdesc)
{
    global $USER;
    $count = count_records_sql("SELECT COUNT(DISTINCT institution)\n            FROM {institution_registration}");
    $pagination = build_pagination(array('id' => 'stats_pagination', 'url' => get_config('wwwroot') . 'admin/statistics.php?type=institutions', 'jsonscript' => 'admin/statistics.json.php', 'datatable' => 'statistics_table', 'count' => $count, 'limit' => $limit, 'offset' => $offset, 'extradata' => array('sort' => $sort, 'sortdesc' => $sortdesc), 'setlimit' => true));
    $result = array('count' => $count, 'tablerows' => '', 'pagination' => $pagination['html'], 'pagination_js' => $pagination['javascript']);
    if ($count < 1) {
        return $result;
    }
    if ($sort == 'displayname') {
        if (is_postgres()) {
            $institutions = get_records_sql_array("SELECT tmp.id, tmp.institution AS name, i.displayname\n                    FROM (SELECT DISTINCT ON (institution)\n                        id, institution\n                        FROM {institution_registration}\n                        ORDER BY institution, time DESC\n                    ) tmp\n                    JOIN {institution} i ON (tmp.institution = i.name)\n                    ORDER BY i.displayname " . ($sortdesc ? 'DESC' : 'ASC') . "\n                    LIMIT ? OFFSET ?", array($limit, $offset));
        } else {
            $institutions = get_records_sql_array("SELECT tmp.id, tmp.institution AS name, i.displayname\n                    FROM (SELECT ir.id, ir.institution\n                        FROM {institution_registration} ir\n                        JOIN (SELECT institution, MAX(time) AS time\n                            FROM {institution_registration}\n                            GROUP BY institution\n                        ) inn ON (inn.institution = ir.institution AND inn.time = ir.time)\n                    ) tmp\n                    JOIN {institution} i ON (tmp.institution = i.name)\n                    ORDER BY i.displayname " . ($sortdesc ? 'DESC' : 'ASC') . "\n                    LIMIT ? OFFSET ?", array($limit, $offset));
        }
    } else {
        if (is_postgres()) {
            $institutions = get_records_sql_array("SELECT tmp.id, tmp.institution AS name, i.displayname\n                    FROM (SELECT DISTINCT ON (ir.institution)\n                        ir.id, ir.institution, ird.value\n                        FROM {institution_registration} ir\n                        JOIN {institution_registration_data} ird ON (ir.id = ird.registration_id)\n                        WHERE ird.field = ?\n                        ORDER BY ir.institution, ir.time DESC\n                    ) tmp\n                    JOIN {institution} i ON (tmp.institution = i.name)\n                    ORDER BY tmp.value::int " . ($sortdesc ? 'DESC' : 'ASC') . "\n                    LIMIT ? OFFSET ?", array($sort, $limit, $offset));
        } else {
            $institutions = get_records_sql_array("SELECT tmp.id, tmp.institution AS name, i.displayname\n                    FROM (SELECT ir.id, ir.institution, ird.value\n                        FROM {institution_registration} ir\n                        JOIN (SELECT institution, MAX(time) AS time\n                            FROM {institution_registration}\n                            GROUP BY institution\n                        ) inn ON (inn.institution = ir.institution AND inn.time = ir.time)\n                        JOIN {institution_registration_data} ird ON (ir.id = ird.registration_id)\n                        WHERE ird.field = ?\n                    ) tmp\n                    JOIN {institution} i ON (tmp.institution = i.name)\n                    ORDER BY (tmp.value + 0) " . ($sortdesc ? 'DESC' : 'ASC') . "\n                    LIMIT ? OFFSET ?", array($sort, $limit, $offset));
        }
    }
    $registrationdata = array();
    foreach ($institutions as $i) {
        $d = new StdClass();
        $d->name = $i->name;
        $d->displayname = $i->displayname;
        $current = get_records_select_array('institution_registration_data', 'registration_id = ? AND field IN (?, ?, ?, ? ,?)', array($i->id, 'count_members', 'count_views', 'count_blocks', 'count_artefacts', 'count_interaction_forum_post'), '', 'field, value');
        foreach ($current as $data) {
            $d->{$data->field} = $data->value;
        }
        $registrationdata[] = $d;
    }
    $csvfields = array('name', 'count_members', 'count_views', 'count_blocks', 'count_artefacts', 'count_interaction_forum_post');
    $USER->set_download_file(generate_csv($registrationdata, $csvfields), 'institutionstatistics.csv', 'text/csv');
    $result['csv'] = true;
    $smarty = smarty_core();
    $smarty->assign('data', $registrationdata);
    $smarty->assign('offset', $offset);
    $result['tablerows'] = $smarty->fetch('admin/comparisonstats.tpl');
    return $result;
}
コード例 #8
0
		lat as latprod,
		lon as lonprod 
FROM sialab.ref_eld	WHERE id = "' . $idprod . '" ) tableplic
cross join (SELECT id as ID_comparaison,
		nom,
		statut,
		ville,
		dept,
		nb_hab,
		dette,
		cap_autof,
		dette_sur_caf,
		nb_year,
		commune,
		clients,
		website,
		code_postal,
		ville_insee,
lat,lon from sialab.ref_eld	WHERE id <> "' . $idprod . '" ) as producteurs )A
ORDER BY distanceab asc limit ' . $param . ';		
		
		';
        if ($sql == 1) {
            echo $req;
        } elseif ($csv == 1) {
            generate_csv($req, "ID_producteur", "nom centrale", "Filiere", "code postal", "puissance", "date raccordement", "date resiliation", "latitude", "longitude", "PINST", "PS");
        } else {
            generate_json($req, 3);
        }
    }
}
コード例 #9
0
                 $csv_record['instructor'] = $row[2];
                 $csv_record['credits'] = $row[3];
                 $csv_record['grade_percent'] = $row[4];
                 $csv_record['grade_letter'] = $row[5];
                 $csv_array[] = $csv_record;
             }
             $userlisthtml .= '<br /><span style="font-size:1.5em;font-weight:bold">' . $mhr_user->getFullNameString() . ' (' . $mhr_user->getObject()->email . ')</span><br /><br />';
             $record_count = $course_history_table->getTotal('record_count');
             if ($record_count > 0) {
                 $userlisthtml .= $course_history_table->getHTML();
             } else {
                 $userlisthtml .= 'No Records To Display<br />';
             }
         }
         $csvfields = array('username', 'start_date', 'course', 'enrol_date', 'catalog', 'platform', 'instructor', 'credits', 'grade_percent', 'grade_letter');
         $USER->set_download_file(generate_csv($csv_array, $csvfields), 'coursehistory.csv', 'text/csv');
         $csv = true;
     }
 } else {
     if ($selected == 'accesslist') {
         require_once get_config('libroot') . 'view.php';
         $accesslists = View::get_accesslists(array_keys($users));
         foreach ($accesslists['collections'] as $k => $c) {
             if (!isset($users[$c['owner']]->collections)) {
                 $users[$c['owner']]->collections = array();
             }
             $users[$c['owner']]->collections[$k] = $c;
         }
         foreach ($accesslists['views'] as $k => $v) {
             if (!isset($users[$v['owner']]->views)) {
                 $users[$v['owner']]->views = array();
コード例 #10
0
<?php

$page = 1;
$apiKey = 'a864ed30-fccd-11e5-aaaa-2d4ec69062d0';
$records = array();
//parse each page of the API call
parse_page($page, $apiKey);
//following the parsing of each page, construct CSV;
//generate exports
generate_csv($records);
generate_rdf($records);
/********* FUNCTIONS **********/
function parse_page($page, $apiKey)
{
    global $records;
    echo "Page {$page}\n";
    $query = '(standardreferencenumber:RRC+OR+standardreferencenumber:RIC+OR+standardreferencenumber:Price)';
    //$query = '"RIC+IX,+p.+235,+88b(1)"';
    $service = 'http://api.harvardartmuseums.org/object?size=100&classification=Coins&q=' . $query . '+AND+department:"Department%20of%20Ancient%20and%20Byzantine%20Art%20%26%20Numismatics"&apikey=' . $apiKey . '&page=' . $page;
    $json = file_get_contents($service);
    $data = json_decode($json);
    foreach ($data->records as $record) {
        $references = explode(';', $record->standardreferencenumber);
        foreach ($references as $reference) {
            if (preg_match('/RRC/', $reference)) {
                $num = explode(' ', $reference);
                $row = array();
                //generate record metadata array
                $row = construct_metadata($record);
                $row['reference'] = $reference;
                //ignore uncertain coins
コード例 #11
0
<?php

/**
 *
 * @package    mahara
 * @subpackage admin
 * @author     Catalyst IT Ltd
 * @license    http://www.gnu.org/copyleft/gpl.html GNU GPL version 3 or later
 * @copyright  For copyright information on Mahara, please see the README file distributed with this software.
 *
 */
define('INTERNAL', 1);
define('ADMIN', 1);
define('INSTITUTIONALADMIN', 1);
require dirname(dirname(dirname(__FILE__))) . '/init.php';
require_once 'searchlib.php';
$search = (object) array('query' => '', 'sortby' => 'firstname', 'sortdir' => 'asc', 'archivedsubmissions' => true);
$search->institution = param_alphanum('institution', null);
if (!empty($search->institution)) {
    if (!$USER->get('admin') && !$USER->is_institutional_admin($search->institution)) {
        throw new AccessDeniedException();
    }
}
$results = get_admin_user_search_results($search, 0, false);
if (!empty($results['data'])) {
    $csvfields = array('username', 'email', 'firstname', 'lastname', 'preferredname', 'submittedto', 'specialid', 'filetitle', 'filepath', 'filename', 'archivectime');
    $USER->set_download_file(generate_csv($results['data'], $csvfields), 'archivedsubmissions.csv', 'text/csv');
    redirect(get_config('wwwroot') . 'download.php');
}
$SESSION->add_error_msg(get_string('nocsvresults', 'admin'));
redirect(get_config('wwwroot') . 'admin/groups/archives.php?institution=' . $search->institution);
コード例 #12
0
ファイル: export.php プロジェクト: KuberKode/grase-www-portal
    $users = array();
    foreach ($groups as $group) {
        $group = \Grase\Clean::groupName($group);
        $usersInGroup = $DBF->getMultipleUsersDetails($DBF->getUsersByGroup($group));
        if (is_array($usersInGroup)) {
            $users = array_merge($users, $usersInGroup);
        }
    }
    $title = sprintf(T_('Group_%s_details'), implode('-', $groups));
} else {
    echo T_("Need a group or batch");
    // TODO Use error template
    exit;
}
if ($_GET['format'] == 'csv') {
    generate_csv($users, $title);
} elseif ($_GET['format'] == 'html') {
    printTickets($users, $title);
} else {
    // TODO error page
    echo T_("Need valid format");
    exit;
}
function generate_csv($users, $title)
{
    $groupSettings = grouplist();
    header("Content-type: text/csv");
    header("Content-Disposition: attachment; filename={$title}.csv");
    header("Pragma: no-cache");
    header("Expires: 0");
    $details = array();
コード例 #13
0
ファイル: report.php プロジェクト: rboyatt/mahara
        }
    }
}
$userids = array_keys($users);
if ($selected == 'users') {
    $subheading = get_string('users');
    $smarty = smarty_core();
    $smarty->assign_by_ref('users', $users);
    $smarty->assign_by_ref('USER', $USER);
    $userlisthtml = $smarty->fetch('admin/users/userlist.tpl');
    if ($USER->get('admin') || $USER->is_institutional_admin()) {
        $csvfields = array('username', 'email', 'firstname', 'lastname', 'studentid', 'preferredname', 'remoteuser', 'lastlogin');
    } else {
        $csvfields = array('username', 'firstname', 'lastname', 'studentid', 'preferredname', 'lastlogin');
    }
    $USER->set_download_file(generate_csv($users, $csvfields), 'users.csv', 'text/csv');
    $csv = true;
} else {
    if ($selected == 'accesslist') {
        $subheading = get_string('accesslist', 'view');
        require_once get_config('libroot') . 'view.php';
        $accesslists = View::get_accesslists(array_keys($users));
        foreach ($accesslists['collections'] as $k => $c) {
            if (!isset($users[$c['owner']]->collections)) {
                $users[$c['owner']]->collections = array();
            }
            $users[$c['owner']]->collections[$k] = $c;
        }
        foreach ($accesslists['views'] as $k => $v) {
            if (!isset($users[$v['owner']]->views)) {
                $users[$v['owner']]->views = array();
コード例 #14
0
        }
        if (strlen(trim($row['subjplace'])) > 0) {
            $array = array_filter(explode('|', $row['subjplace']));
            foreach ($array as $val) {
                if (!in_array(trim($val), $places)) {
                    $places[] = trim($val);
                }
            }
        }
    }
}
//generate csv
generate_csv($makers, 'makers');
generate_csv($artists, 'artists');
generate_csv($states, 'states');
generate_csv($places, 'places');
function generate_csv($array, $type)
{
    if ($type == 'places') {
        $csv = '"value","uri","placename"' . "\n";
    } else {
        $csv = '"value","uri"' . "\n";
    }
    foreach ($array as $value) {
        $csv .= '"' . $value . '",';
        if ($type == 'places') {
            $geonames = query_geonames($value);
            $geonameId = $geonames[0];
            if (strlen($geonameId) > 0) {
                $geonames_uri = 'http://www.geonames.org/' . $geonameId;
                $geonames_place = $geonames[1];