Exemplo n.º 1
0
 public static function check_auth($bookid, $user, $passwd)
 {
     global $DB;
     if (!($publisherid = $DB->get_field('rcommon_books', 'publisherid', array('id' => $bookid)))) {
         return false;
     }
     return rcommon_publisher::check_auth($publisherid, $user, $passwd);
 }
Exemplo n.º 2
0
function valid_activity($resultext, $book, $rcontentactivityid, $unidadid)
{
    global $CFG, $DB;
    require_once $CFG->dirroot . '/local/rcommon/WebServices/BooksStructure.php';
    $actividad = false;
    try {
        // Busco la actividad por actividadid del rcontent, cuando no hay que ForzarGuardar
        if ($rcontentactivityid != 0 && !isForzarGuardar($resultext)) {
            $actividad = rcommon_activity::get($rcontentactivityid);
            // If rcontent has a specific activity error if you come from or are not equal ws
            if ($actividad && (!isset($resultext->idActividad) || $actividad->code != $resultext->idActividad)) {
                return false;
            }
        }
        // Search the activity from the WS
        if (isset($resultext->idActividad) && !empty($resultext->idActividad)) {
            // Buscamos la unidad por codigo
            if (!$actividad) {
                $actividad = rcommon_activity::get_from_code($resultext->idActividad, $unidadid, $book->id);
            }
            if ($book->structureforaccess == 1) {
                // Just update if no isset unit/actividad title or no isset unit/activity order
                $update = $actividad && (empty($activitat->name) && !empty($resultext->ActividadTitulo) || empty($activitat->sortorder) && !empty($resultext->ActividadOrden));
                // Si no se ha encontrado la unidad o se ha encontrado pero cambia el nombre o orden llamamos al ws
                if (!$actividad || $update) {
                    $publisher = rcommon_publisher::get($book->publisherid);
                    get_book_structure($publisher, $book->isbn);
                    // Obtengo los nuevos datos de la actividad
                    if (!$actividad) {
                        $actividad = rcommon_activity::get_from_code($resultext->idActividad, $unidadid, $book->id);
                    }
                }
            }
            // Activity not found, error raised
            if (!$actividad) {
                log_to_file("wsSeguimiento: function valid_activity - Activity not found. Activitycode: {$resultext->idActividad} Unitid: {$unidadid} Bookid: {$book->id}");
                return false;
            }
            return $actividad;
        }
    } catch (Exception $e) {
        log_to_file("wsSeguimiento: function valid_activity - Exception = " . $e->getMessage());
        return false;
    }
    // No activity found but not specified
    return true;
}