示例#1
0
function xmldb_block_repository_upgrade($oldversion = 0)
{
    $result = true;
    if ($oldversion < 2010090901) {
        $errors = false;
        $auths = block_repository_nopasswd_auths();
        $authlist = "'" . implode("', '", $auths) . "'";
        $users = get_records_select('user', "auth IN ({$authlist})", '', 'id, auth');
        if (!empty($users)) {
            foreach ($users as $user) {
                $user = get_complete_user_data('id', $user->id);
                $migrate_ok = block_repository_user_created($user);
                if (!$migrate_ok) {
                    $errors = true;
                    error_log("xmldb_block_repository_upgrade({$oldversion}) - failed migrating user ({$user->id}) to Alfresco.");
                }
            }
        }
        if (!$errors) {
            set_config('initialized', 1, repository_plugin_alfresco::$plugin_name);
        }
    }
    return $result;
}
 function repository_plugin_alfresco()
 {
     global $CFG, $USER;
     if (ALFRESCO_DEBUG_TRACE) {
         mtrace('repository_plugin_alfresco()');
     }
     if (!$this->is_configured()) {
         return false;
     }
     if (!$this->is_running()) {
         return false;
     }
     if (!$this->get_defaults()) {
         return false;
     }
     $result = $this->verify_setup();
     // Check if we need to initialize non-password users (openid, cas, ...)
     if ($result && !self::$init && is_siteadmin($USER->id) && !get_config(self::$plugin_name, 'initialized')) {
         require_once $CFG->dirroot . '/blocks/repository/lib.php';
         error_log('repository_plugin_alfresco() - INFO: initializing users ...');
         self::$init = true;
         $errors = 0;
         $auths = block_repository_nopasswd_auths();
         $authlist = "'" . implode("', '", $auths) . "'";
         $users = get_records_select('user', "auth IN ({$authlist})", '', 'id, auth');
         if (!empty($users)) {
             foreach ($users as $user) {
                 $user = get_complete_user_data('id', $user->id);
                 $migrate_ok = block_repository_user_created($user);
                 if (!$migrate_ok) {
                     $errors++;
                     error_log("repository_plugin_alfresco() - failed migrating user ({$user->id}) to Alfresco.");
                 }
             }
         }
         error_log("repository_plugin_alfresco() - INFO: initialization complete ({$errors} errors)");
         if (!$errors) {
             set_config('initialized', 1, self::$plugin_name);
         }
     }
     return $result;
 }