function form_single_register($id_course, $id_instance, $file_action, $file_back) { // inizializzazione variabili $str = ""; // nome $fields["add"][] = "student[nome]"; $names["add"][] = "Nome"; $edittypes["add"][] = "text"; $necessary["add"][] = "true"; $values["add"][] = ""; $options["add"][] = ""; $maxsize["add"][] = 50; // cognome $fields["add"][] = "student[cognome]"; $names["add"][] = "Cognome"; $edittypes["add"][] = "text"; $necessary["add"][] = "true"; $values["add"][] = ""; $options["add"][] = ""; $maxsize["add"][] = 50; // email $fields["add"][] = "student[email]"; $names["add"][] = "e-mail"; $edittypes["add"][] = "text"; $necessary["add"][] = "true"; $values["add"][] = ""; $options["add"][] = ""; $maxsize["add"][] = 50; // username $fields["add"][] = "student[username]"; $names["add"][] = "username"; $edittypes["add"][] = "text"; $necessary["add"][] = ""; $values["add"][] = ""; $options["add"][] = ""; $maxsize["add"][] = 50; // password $fields["add"][] = "student[password]"; $names["add"][] = "password"; $edittypes["add"][] = "password"; $necessary["add"][] = ""; $values["add"][] = ""; $options["add"][] = ""; $maxsize["add"][] = 50; // password check $fields["add"][] = "student[passwordcheck]"; $names["add"][] = "ripeti password"; $edittypes["add"][] = "password"; $necessary["add"][] = ""; $values["add"][] = ""; $options["add"][] = ""; $maxsize["add"][] = 50; // telefono $fields["add"][] = "student[telefono]"; $names["add"][] = "telefono"; $edittypes["add"][] = "text"; $necessary["add"][] = ""; $values["add"][] = ""; $options["add"][] = ""; $maxsize["add"][] = 12; // course_instance $fields["add"][] = "id_instance"; $names["add"][] = ""; $edittypes["add"][] = "hidden"; $necessary["add"][] = ""; $values["add"][] = $id_instance; $options["add"][] = ""; $maxsize["add"][] = 12; // course $fields["add"][] = "id_course"; $names["add"][] = "id_course"; $edittypes["add"][] = "hidden"; $necessary["add"][] = ""; // $values["add"][]=""; $values["add"][] = $id_course; $options["add"][] = ""; $maxsize["add"][] = 12; // creazione del form $str = MakeForm($fields, $names, $edittypes, $necessary, $values, $options, $maxsize, $file_action, "add", false, true); return $str; }
function course_instance_tutor_form($file_action, $file_back, $id_instance, $id_tutor_old, $id_corso, $tutors_ar) { // numero totale di tutor $n = count($tutors_ar); if ($n > 0) { for ($i = 0; $i < $n; $i++) { // scelta tutor $fields["add"][] = "id_tutor_new"; //$names["add"][]= "<a href=\"zoom_tutor.php?id=$id_tutor_old\">".$tutors_ar[$i][1] ." ". $tutors_ar[$i][2] ."</a>:"; $names["add"][] = "<a href=\"zoom_tutor.php?id={$tutors_ar[$i][0]}\">" . $tutors_ar[$i][1] . " " . $tutors_ar[$i][2] . "</a>:"; $edittypes["add"][] = "radio"; $necessary["add"][] = ""; $values["add"][] = "{$id_tutor_old}"; $options["add"][] = $tutors_ar[$i][0] . ":"; $maxsize["add"][] = 32; } // delete tutor // ADA mod: only when no tutor is assigned we allow to not assign a tutor if ($id_tutor_old == "no") { $fields["add"][] = "id_tutor_new"; $names["add"][] = "nessun tutor :"; $edittypes["add"][] = "radio"; $necessary["add"][] = ""; if ($id_tutor_old == "no") { $values["add"][] = "del"; } else { $values["add"][] = ""; } $options["add"][] = "del:"; $maxsize["add"][] = 32; } } else { $str = "<p>" . translateFN("Non vi sono tutor.") . "</p>"; // scrittura stringa back $str .= $this->go_file_back($file_back, translateFN("Indietro")); return $str; } // id old tutor $fields["add"][] = "id_tutor_old"; $names["add"][] = "id_tutor_old"; $edittypes["add"][] = "hidden"; $necessary["add"][] = "true"; $values["add"][] = $id_tutor_old; $options["add"][] = ""; $maxsize["add"][] = 20; // id instance $fields["add"][] = "id_instance"; $names["add"][] = "id_instance"; $edittypes["add"][] = "hidden"; $necessary["add"][] = "true"; $values["add"][] = $id_instance; $options["add"][] = ""; $maxsize["add"][] = 20; // id corso $fields["add"][] = "id_corso"; $names["add"][] = "id_corso"; $edittypes["add"][] = "hidden"; $necessary["add"][] = "true"; $values["add"][] = $id_corso; $options["add"][] = ""; $maxsize["add"][] = 20; // creazione del form $str = MakeForm($fields, $names, $edittypes, $necessary, $values, $options, $maxsize, $file_action, "add", false, true); // scrittura stringa back $str .= $this->go_file_back($file_back, translateFN("Indietro")); return $str; }
function edit_nodeFN($id_node, $id_course, $action) { $self = $GLOBALS['self']; $sess_id_node = $_SESSION['sess_id_node']; $sess_id_user = $_SESSION['sess_id_user']; $http_root_dir = $GLOBALS['http_root_dir']; $dh = $GLOBALS['dh']; // get object node $nodeObj = read_node_from_DB($id_node); if (is_object($nodeObj) && !AMA_DataHandler::isError($nodeObj)) { $sess_id_node = $nodeObj->id; $name = $nodeObj->name; $title = $nodeObj->title; $text = $nodeObj->text; $type = $nodeObj->type; $level = $nodeObj->level; $parent_id = $nodeObj->parent_id; $position = $nodeObj->position; $order = $nodeObj->ordine; $version = $nodeObj->version; $color = $nodeObj->color; $bgcolor = $nodeObj->bgcolor; $correctness = $nodeObj->correctness; $copyright = $nodeObj->copyright; $n_contacts = $nodeObj->contacts; $icon = $nodeObj->icon; $id_node_author = $nodeObj->author; $creation_date = $nodeObj->creation_date; $id_instance = $nodeObj->id_instance; //get parent obj node [useful in several tasks] $nodeObjParent = read_node_from_DB($sess_id_node); if (is_object($nodeObj) && !AMA_DataHandler::isError($nodeObj)) { $sess_id_nodeParent = $nodeObjParent->id; $nameParent = $nodeObjParent->name; $titleParent = $nodeObjParent->title; $textParent = $nodeObjParent->text; $typeParent = $nodeObjParent->type; $levelParent = $nodeObjParent->level; $parent_idParent = $nodeObjParent->parent_id; $positionParent = $nodeObjParent->position; $orderParent = $nodeObjParent->ordine; $versionParent = $nodeObjParent->version; $colorParent = $nodeObjParent->color; $bgcolorParent = $nodeObjParent->bgcolor; $correctnessParent = $nodeObjParent->correctness; $copyrightParent = $nodeObjParent->copyright; $n_contactsParent = $nodeObjParent->contacts; $iconParent = $nodeObjParent->icon; $id_node_authorParent = $nodeObjParent->author; $creation_dateParent = $nodeObjParent->creation_date; $id_instanceParent = $nodeObjParent->id_instance; } // building form $invia = translateFN("Anteprima"); $reset = ""; $sess_id_node = $id_node; switch ($type) { case ADA_NOTE_TYPE: //NOTE $label_nome = translateFN('Titolo della nota'); $label_testo = translateFN('Testo'); $label_keywords = translateFN('Keywords'); $label_tipo = translateFN('Tipo'); // promote note->node ! $type_field = "hidden"; // text $fields["add"][] = "type"; $names["add"][] = ""; $edittypes["add"][] = $type_field; $necessary["add"][] = $label_tipo; $values["add"][] = $type; $options["add"][] = ""; $maxsize["add"][] = 40; break; case ADA_PRIVATE_NOTE_TYPE: //NOTE $label_nome = translateFN('Titolo della nota personale'); $label_testo = translateFN('Testo'); $label_keywords = translateFN('Keywords'); $label_tipo = translateFN('Tipo'); //promote private note-> forum note $label_tipo =""; $type_field = "hidden"; // text $fields["add"][] = "type"; $names["add"][] = ""; $edittypes["add"][] = $type_field; $necessary["add"][] = $label_tipo; $values["add"][] = $type; $options["add"][] = ""; $maxsize["add"][] = 40; break; default: $type_field = "text"; $label_nome = translateFN('Titolo'); $label_testo = translateFN('Testo'); $label_tipo = translateFN('Tipo'); $label_keywords = translateFN('Keywords'); $label_livello = translateFN('Livello'); $label_ordine = translateFN('Ordine'); $label_versione = translateFN('Versione'); $label_correttezza = translateFN('Correttezza'); $label_icona = translateFN('Icona'); $label_data = translateFN('Data'); $label_parent = translateFN('Gruppo'); $label_position = translateFN('Posizione'); // genitori del nodo $nodesCourse = $dh->find_course_nodes_list(array('nome', 'tipo'), "ID_UTENTE = '{$sess_id_user}' AND TIPO in (0,1) AND ID_NODO!=" . $id_node . " order by ID_NODO asc", $id_course); if (is_array($nodesCourse) && sizeof($nodesCourse) > 0) { foreach ($nodesCourse as $value) { // adding type of node to select label switch ($value[2]) { case ADA_GROUP_TYPE: $tipo = translateFN('Gruppo'); break; case ADA_LEAF_TYPE: $tipo = translateFN('Nodo'); break; } $nodesCourse_label[] = $value[0] . " " . $value[1] . " (" . $tipo . ")"; $nodesCourse_value[] = $value[0]; } //fine foreach sui nodi $nodesCourse_label = ":" . implode(":", $nodesCourse_label); $nodesCourse_value = implode(":", $nodesCourse_value); $fields["add"][] = "parent_id"; $names["add"][] = translateFN('Nodo superiore') . $nodesCourse_label; $edittypes["add"][] = "select"; $necessary["add"][] = ""; $values["add"][] = $nodesCourse_value; $options["add"][] = ""; $maxsize["add"][] = 10; } // Livello del nodo $fields["add"][] = "level"; $names["add"][] = $label_livello; $edittypes["add"][] = "text"; $necessary["add"][] = ""; $values["add"][] = $level; $options["add"][] = ""; $maxsize["add"][] = 10; // Ordine del nodo $fields["add"][] = "order"; $names["add"][] = $label_ordine; $edittypes["add"][] = "text"; $necessary["add"][] = ""; $values["add"][] = $order; $options["add"][] = ""; $maxsize["add"][] = 10; // Versione del nodo $fields["add"][] = "version"; $names["add"][] = $label_versione; $edittypes["add"][] = "text"; $necessary["add"][] = ""; $values["add"][] = $version + 1; $options["add"][] = ""; $maxsize["add"][] = 10; // Correttezza del nodo ??? ONLY IF PARENT IS AN EXERCISE //mio dubbio [Raffaele], la soluzione e' un po' debole perche' nel caso variano o si estendono gli e esercizi in config bisogna anche individuare la variazion da apportare nel resto del codic if (in_array($typeParent, array(ADA_STANDARD_EXERCISE_TYPE, ADA_OPEN_MANUAL_EXERCISE_TYPE, ADA_OPEN_AUTOMATIC_EXERCISE_TYPE, ADA_CLOZE_EXERCISE_TYPE, ADA_OPEN_UPLOAD_EXERCISE_TYPE))) { $fields["add"][] = "correctness"; $names["add"][] = $label_correttezza; $edittypes["add"][] = "text"; $necessary["add"][] = ""; $values["add"][] = $correctness; $options["add"][] = ""; $maxsize["add"][] = 10; } // Data del nodo $fields["add"][] = "creation_date"; $names["add"][] = $label_data; $edittypes["add"][] = "text"; $necessary["add"][] = ""; $values["add"][] = $creation_date; $options["add"][] = ""; $maxsize["add"][] = 10; // Icona del nodo $fields["add"][] = "icon"; $names["add"][] = $label_icona; $edittypes["add"][] = "text"; $necessary["add"][] = ""; $values["add"][] = $icon; $options["add"][] = ""; $maxsize["add"][] = 20; // tipo del nodo $fields["add"][] = "type"; $names["add"][] = $label_tipo; $edittypes["add"][] = $type_field; $necessary["add"][] = ""; $values["add"][] = $type; $options["add"][] = ""; $maxsize["add"][] = 40; // Posizione del nodo $desc_pos = translateFN('Posizione'); $fields["add"][] = "position"; $names["add"][] = $desc_pos; $edittypes["add"][] = "text"; $necessary["add"][] = ""; $values["add"][] = implode(",", $position); //"100,100,200,200"; $options["add"][] = ""; $maxsize["add"][] = 20; // inserisci link interno $desc_pos = translateFN('Gestione Link Interno al Nodo'); $fields["add"][] = ""; $names["add"][] = $desc_pos; $edittypes["add"][] = "link"; $necessary["add"][] = ""; $values["add"][] = "add_link.php?link_type=0&id_nodefrom=" . $id_node . "&id_course=" . $id_course; $options["add"][] = array('target' => '_blank'); $maxsize["add"][] = ""; // inserisci link esterno $desc_pos = translateFN(' Gestione Link Esterno al Nodo'); $fields["add"][] = ""; $names["add"][] = $desc_pos; $edittypes["add"][] = "link"; $necessary["add"][] = ""; $values["add"][] = "add_link.php?link_type=1&id_nodefrom=" . $id_node . "&id_course=" . $id_course; $options["add"][] = array('target' => '_blank'); $maxsize["add"][] = ""; // inserisci multimedia $desc_pos = translateFN('Gestione Multimedia'); $fields["add"][] = ""; $names["add"][] = $desc_pos; $edittypes["add"][] = "link"; $necessary["add"][] = ""; $values["add"][] = "upload.php?id_node=" . $id_node; $options["add"][] = array('target' => '_blank'); $maxsize["add"][] = ""; } // Course $fields["add"][] = "course"; $names["add"][] = ""; $edittypes["add"][] = "hidden"; $necessary["add"][] = ""; $values["add"][] = $id_course; $options["add"][] = ""; $maxsize["add"][] = ""; // Nome del nodo $fields["add"][] = "name"; $names["add"][] = $label_nome; $edittypes["add"][] = "text"; $necessary["add"][] = ""; $values["add"][] = $name; $options["add"][] = ""; $maxsize["add"][] = 80; // Keywords del nodo $fields["add"][] = "title"; $names["add"][] = $label_keywords; $edittypes["add"][] = "text"; $necessary["add"][] = ""; $values["add"][] = $title; $options["add"][] = ""; $maxsize["add"][] = 80; // Testo del nodo $fields["add"][] = "text"; $names["add"][] = $label_testo; $edittypes["add"][] = "textarea"; $necessary["add"][] = ""; $values["add"][] = $text; $options["add"][] = ""; $maxsize["add"][] = ""; // nodo $fields["add"][] = "id_node"; $names["add"][] = ""; $edittypes["add"][] = "hidden"; $necessary["add"][] = ""; $values["add"][] = $id_node; $options["add"][] = ""; $maxsize["add"][] = 20; $head_form = ""; $menu = "<a href={$http_root_dir}/browsing/view.php?id_node={$sess_id_node}>" . translateFN('Torna') . "</a>"; // creazione del form $form = MakeForm($fields, $names, $edittypes, $necessary, $values, $options, $maxsize, $action . ".php?op=preview", "add", false, true, $invia, $reset); $data['head_form'] = $head_form; $data['menu'] = $menu; $data['form'] = $form; return $data; } else { $errObj = new ADA_Error($nodeObj, translateFN('Nodo non trovato, impossibile proseguire.')); // FIXME: eliminare il return? return $errObj; } }