*/
require_once '../../lib/config.inc.php';
require_once '../../lib/app.inc.php';
//* Check permissions for module
$app->auth->check_module_permissions('admin');
//* This is only allowed for administrators
if (!$app->auth->is_admin()) {
    die('only allowed for administrators.');
}
//* Get the latest packages from the repositorys and insert them in the local database
$packages_added = 0;
$repos = $app->db->queryAllRecords("SELECT software_repo_id, repo_url, repo_username, repo_password FROM software_repo WHERE active = 'y'");
if (is_array($repos) && isset($_GET['action']) && $_GET['action'] == 'repoupdate') {
    foreach ($repos as $repo) {
        $client = new SoapClient(null, array('location' => $repo['repo_url'], 'uri' => $repo['repo_url']));
        $packages = $client->get_packages($repo['repo_username'], $repo['repo_password']);
        if (is_array($packages)) {
            foreach ($packages as $p) {
                $package_name = $app->db->quote($p['name']);
                $tmp = $app->db->queryOneRecord("SELECT package_id FROM software_package WHERE package_name = '{$package_name}'");
                $package_title = $app->db->quote($p['title']);
                $package_description = $app->db->quote($p['description']);
                $software_repo_id = $app->functions->intval($repo['software_repo_id']);
                $package_type = $app->db->quote($p['type']);
                $package_installable = $app->db->quote($p['installable']);
                $package_requires_db = $app->db->quote($p['requires_db']);
                $package_remote_functions = $app->db->quote($p['remote_functions']);
                if (empty($tmp['package_id'])) {
                    //$sql = "INSERT INTO software_package (software_repo_id, package_name, package_title, package_description,package_type,package_installable,package_requires_db) VALUES ($software_repo_id, '$package_name', '$package_title', '$package_description','$package_type','$package_installable','$package_requires_db')";
                    //$app->db->query($sql);
                    $insert_data = "(software_repo_id, package_name, package_title, package_description,package_type,package_installable,package_requires_db,package_remote_functions) VALUES ({$software_repo_id}, '{$package_name}', '{$package_title}', '{$package_description}','{$package_type}','{$package_installable}','{$package_requires_db}','{$package_remote_functions}')";