Esempio n. 1
0
/**
 * @param App $a
 * @param object $b
 */
function dav_event_updated_hook(&$a, &$b)
{
    dav_include_files();
    // @TODO Updating the cache instead of completely invalidating and rebuilding it
    FriendicaVirtualCalSourceBackend::invalidateCache($a->user["uid"], CALDAV_FRIENDICA_CONTACTS);
    FriendicaVirtualCalSourceBackend::invalidateCache($a->user["uid"], CALDAV_FRIENDICA_MINE);
}
Esempio n. 2
0
/**
 * @param App $a
 * @param string $o
 */
function dav_plugin_admin(&$a, &$o)
{
    dav_include_files();
    require_once __DIR__ . "/database-init.inc.php";
    $dbstatus = dav_check_tables();
    $o = '<input type="hidden" name="form_security_token" value="' . get_form_security_token("dav_admin_save") . '">';
    $o .= '<i>' . t("No system-wide settings yet.") . '</i><br><br>';
    $o .= '<h3>' . t('Database status') . '</h3>';
    switch ($dbstatus) {
        case 0:
            $o .= t('Installed');
            break;
        case 1:
        case 2:
            $o .= "<strong>" . t('Upgrade needed') . "</strong><br>" . t("Please back up all calendar data (the tables beginning with dav_*) before proceeding. While all calendar events <i>should</i> be converted to the new database structure, it's always safe to have a backup. Below, you can have a look at the database-queries that will be made when pressing the 'update'-button.") . "<br><br><input type='submit' name='upgrade' value='" . t('Upgrade') . "'>";
            break;
        case -1:
            $o .= t('Not installed') . "<br><br><input type='submit' name='install' value='" . t('Install') . "'>";
            break;
        case -2:
        default:
            $o .= t('Unknown') . "<br><br>" . t("Something really went wrong. I cannot recover from this state automatically, sorry. Please go to the database backend, back up the data, and delete all tables beginning with 'dav_' manually. Afterwards, this installation routine should be able to reinitialize the tables automatically.");
            break;
    }
    $o .= "<br><br>";
    $o .= "<h3>" . t("Troubleshooting") . "</h3>";
    $o .= "<h4>" . t("Manual creation of the database tables:") . "</h4>";
    $o .= "<a href='#' onClick='\$(\"#sqlstatements\").show(); return false;'>" . t("Show SQL-statements") . "</a><blockquote style='display: none;' id='sqlstatements'><pre>";
    switch ($dbstatus) {
        case 1:
        case 2:
            $tables = dav_get_update_statements($dbstatus);
            foreach ($tables as $t) {
                $o .= escape_tags($t . ";\n\n");
            }
            break;
        default:
            $tables = dav_get_create_statements();
            foreach ($tables as $t) {
                $o .= escape_tags($t . ";\n\n");
            }
            break;
    }
    $o .= "</pre></blockquote>";
}