/** * Control rendering * * @return string */ public function render() { $select = CDOMElement::create('select', 'id:' . $this->id . ',class:form'); if (empty($this->files)) { $option = CDOMElement::create('option', 'value:template_clear'); $option->addChild(new CText(translateFN('Nessun template trovato'))); $select->addChild($option); } else { $option = CDOMElement::create('option'); $option->setAttribute('value', ''); $option->addChild(new CText(translateFN('Vuoto'))); $select->addChild($option); $i = 0; foreach ($this->files as $k => $v) { $option = CDOMElement::create('option'); $option->setAttribute('value', htmlspecialchars($v)); $option->addChild(new CText($k)); $select->addChild($option); $i++; } } $button = CDOMElement::create('input_button'); $button->setAttribute('id', $this->id . '_button'); $button->setAttribute('value', translateFN('Inserisci template')); $button->setAttribute('style', 'float:right;'); $html = '<label id="l_' . $this->id . '" for="' . $this->id . '" class="' . self::DEFAULT_CLASS . '">' . $this->label . '</label> ' . $button->getHtml() . ' ' . $select->getHtml(); return $html; }
public static function getAddExerciseForm($form_dataAr = array(), $errorsAr = array()) { $form = CDOMElement::create('form', 'id:add_exercise, name:add_exercise, class:fec, method:post'); $form->setAttribute('action', 'add_exercise.php?verify=1'); //$form->setAttribute('onsubmit',"return checkNec();"); $form->setAttribute('enctype', 'multipart/form-data'); $parent_node = FormElementCreator::addTextInput('parent_node', 'Nodo parent', $form_dataAr, $errorsAr, '', true); $form->addChild($parent_node); $exercise_title = FormElementCreator::addTextInput('exercise_title', 'Titolo esercizio', $form_dataAr, $errorsAr, '', true); $form->addChild($exercise_title); $exercise_familyAr = array(ADA_STANDARD_EXERCISE_TYPE => translateFN('Multiple Choice'), ADA_OPEN_MANUAL_EXERCISE_TYPE => translateFN('Open with Manual Correction'), ADA_OPEN_AUTOMATIC_EXERCISE_TYPE => translateFN('Open with Automatic Correction'), ADA_OPEN_UPLOAD_EXERCISE_TYPE => translateFN('Open Manual + Upload'), ADA_CLOZE_EXERCISE_TYPE => translateFN('CLOZE')); $exercise_family = FormElementCreator::addSelect('exercise_family', 'Tipo di esercizio', $exercise_familyAr, $form_dataAr, $errorsAr, '', true); $form->addChild($exercise_family); $exercise_interactionAr = array(ADA_BLIND_EXERCISE_INTERACTION => translateFN('No Feedback'), ADA_FEEDBACK_EXERCISE_INTERACTION => translateFN('With Feedback'), ADA_RATING_EXERCISE_INTERACTION => translateFN('With Feedback and Rating')); $exercise_interaction = FormElementCreator::addSelect('exercise_interaction', 'Tipo di interazione', $exercise_interactionAr, $form_dataAr, $errorsAr, '', true); $form->addChild($exercise_interaction); $test_modeAr = array(ADA_SINGLE_EXERCISE_MODE => translateFN('Only One Exercise'), ADA_SEQUENCE_EXERCISE_MODE => translateFN('Next Exercise will be Shown'), ADA_RANDOM_EXERCISE_MODE => translateFN('A Random Picked Exercise will be Shown')); $test_mode = FormElementCreator::addSelect('test_mode', 'Modalità di esecuzione', $test_modeAr, $form_dataAr, $errorsAr, '', true); $form->addChild($test_mode); $test_simplificationAr = array(ADA_NORMAL_EXERCISE_SIMPLICITY => translateFN('Normal Exercise'), ADA_MEDIUM_EXERCISE_SIMPLICITY => translateFN('Medium Exercise'), ADA_SIMPLIFY_EXERCISE_SIMPLICITY => translateFN('Simplified Exercise')); $test_simplification = FormElementCreator::addSelect('test_simplification', "Semplicità dell'esercizio", $test_simplificationAr, $form_dataAr, $errorsAr, '', true); $form->addChild($test_simplification); $test_barrierAr = array(ADA_NO_EXERCISE_BARRIER => translateFN('No barrier'), ADA_YES_EXERCISE_BARRIER => translateFN('With barrier')); $test_barrier = FormElementCreator::addSelect('test_barrier', 'Con sbarramento', $test_barrierAr, $form_dataAr, $errorsAr, '', true); $form->addChild($test_barrier); $buttons = FormElementCreator::addSubmitAndResetButtons(); $form->addChild($buttons); return $form; }
/** * get an object representing a row in one of the user 'extra' tables * and returns it formatted in HTML. * * Put all elements inside a table, with $columnsPerRow items per each row. * Label and Value are in 2 separate cells but count as 1 together. * * @param extraTable derived object $extraObject * @param int how many columns per row $columnsPerRow */ public static function extraObjectRow($extraObject, $columnsPerRow = 3) { $className = get_class($extraObject); $keyProperty = $className::getKeyProperty(); $fields = $className::getFields(); $table = CDOMElement::create('table', 'class:extraTableDatas ' . $className . ',id:' . $className . '_' . $extraObject->{$keyProperty}); $tbody = CDOMElement::create('tbody'); for ($row = null, $printedRows = 0, $numRow = 0, $numCol = 0, $num = 0; $num < count($fields); $num++) { $label = $extraObject->getLabel($num); $propertyName = $fields[$num]; if ($label === null) { continue; } if ($row === null) { $row = CDOMElement::create('tr', 'class:extraTableRow row-' . $numRow++); } $columnLbl = CDOMElement::create('td', 'class:extraTableLabel labelCol-' . $numCol . ',id:lbl_' . $propertyName . '_' . $extraObject->{$keyProperty}); $columnLbl->addChild(new CText($label . ": ")); $row->addChild($columnLbl); $columnVal = CDOMElement::create('td', 'class:extraTableValue valueCol-' . $numCol++ . ',id:val_' . $propertyName . '_' . $extraObject->{$keyProperty}); $columnVal->addChild(new CText($extraObject->{$propertyName})); $row->addChild($columnVal); if (++$printedRows % $columnsPerRow === 0) { $tbody->addChild($row); $row = null; } } // check if there's a row to be closed if ($row !== null) { // printedRows has surely one extra increment, let's recuperate it $printedRows--; // add empty cells to complete the row while (++$printedRows % $columnsPerRow !== 0) { // need 2 empty cells (label and value) for each 'column' for ($i = 0; $i < 2; $i++) { $row->addChild(CDOMElement::create('td')); } } $tbody->addChild($row); } $table->addChild($tbody); // generate a div for edit and delete buttons $buttonsdiv = CDOMElement::create('div', 'class:extraButtonDiv ' . $className); $editbutton = CDOMElement::create('a', 'class:extraEditButton'); $editbutton->setAttribute('href', 'javascript:editExtra(\'' . $className . '\',' . $extraObject->{$keyProperty} . ');'); $editbutton->addChild(new CText(translateFN('Modifica'))); $deletebutton = CDOMElement::create('a', 'class:extraDeleteButton'); $deletebutton->setAttribute('href', 'javascript:deleteExtra(\'' . $className . '\',' . $extraObject->{$keyProperty} . ',\'' . $extraObject::getForeignKeyProperty() . '\');'); $deletebutton->addChild(new CText(translateFN('Cancella'))); $buttonsdiv->addChild($editbutton); $buttonsdiv->addChild($deletebutton); // generate a div for wrapping up the table $div = CDOMElement::create('div', 'class:extraTableContainer ' . $className . ',id:extraDIV_' . $extraObject->{$keyProperty}); $div->addChild($table); $div->addChild($buttonsdiv); return $div->getHtml() . CDOMElement::create('div', 'class:clearfix')->getHtml(); }
/** * Render the object structure when the test/survet cannot be accessed by student * * @access protected * * @param $return_html choose the return type * * @return an object of CDOMElement */ protected function renderNoLevel($return_html = true) { $html = CDOMElement::create('div'); $html->addChild(new CText(translateFN('Non puoi accedere a questo sondaggio'))); if ($return_html) { return $html->getHtml(); } else { return $html; } }
/** * Control rendering * * @return string */ public function render() { $div = CDOMElement::create('div'); $div->setAttribute('style', 'text-align:center;'); $div->addChild(new CText(' [ ')); $a = CDOMElement::create('a'); $a->addChild(new CText(sprintf(translateFN('Cambia tipologia %s'), translateFN('Domanda')))); $a->setAttribute('href', $_SERVER['REQUEST_URI'] . '&forgetExerciseType'); $div->addChild($a); $div->addChild(new CText(' ] ')); return $div->getHtml(); }
private static function appendAction($action) { if (empty($action)) { return ''; } $div = CDOMElement::create('div', 'id:enter_appointment'); $link = CDOMElement::create('a'); $link->setAttribute('href', '#'); $link->setAttribute('onclick', $action); $link->addChild(new CText(translateFN('Enter the appointment'))); $div->addChild($link); return $div->getHtml(); }
/** * Control rendering * * @return string */ public function render() { if ($this->modifiable) { $div = CDOMElement::create('div'); $div->setAttribute('class', 'admin_link answers_footer'); $div->addChild(new CText(' [ ')); $a = CDOMElement::create('a'); $a->addChild(new CText(translateFN('Aggiungi risposta'))); $a->setAttribute('href', 'javascript:void(0);'); $a->setAttribute('onclick', 'add_row(this);'); $div->addChild($a); $div->addChild(new CText(' ] ')); return $div->getHtml(); } else { return ''; } }
/** * Control rendering * * @return string */ public function render() { $i = 1; $div = CDOMElement::create('div', 'class:answers_header'); if ($this->open_answer) { $cell = CDOMElement::create('div'); $cell->setAttribute('class', 'cell other_answer'); $cell->addChild(new CText(translateFN('Risposta aperta'))); $div->addChild($cell); } $i++; $cell = CDOMElement::create('div'); $cell->setAttribute('class', 'cell answer'); if ($this->open_answer) { $cell->addChild(new CText(translateFN('Risposta') . ' / ' . translateFN('Indicazione (risp. aperta)'))); } else { $cell->addChild(new CText(translateFN('Risposta'))); } $div->addChild($cell); $i++; $cell = CDOMElement::create('div'); $cell->setAttribute('class', 'cell value'); $cell->addChild(new CText(translateFN('Punteggio'))); $div->addChild($cell); $i++; if ($this->show_case_sensitive) { $cell = CDOMElement::create('div'); $cell->setAttribute('class', 'cell case_sensitive'); $cell->addChild(new CText(translateFN('Ignora Maiuscole'))); $checkbox = CDOMElement::create('checkbox', 'class:case_sensitive_control'); $checkbox->setAttribute('onchange', 'check_case_sensitive(this);'); $cell->addChild($checkbox); $div->addChild($cell); } $i++; if ($this->modifiable) { $cell = CDOMElement::create('div'); $cell->setAttribute('class', 'cell operations'); $cell->addChild(new CText(translateFN('Operazioni'))); $div->addChild($cell); $i++; } return $div->getHtml(); }
/** * return necessaries html objects that represent the object * * @access protected * * @param $ref reference to the object that will contain this rendered object * @param $feedback "show feedback" flag on rendering * @param $rating "show rating" flag on rendering * @param $rating_answer "show correct answer" on rendering * * @return an object of CDOMElement */ protected function renderingHtml(&$ref = null, $feedback = false, $rating = false, $rating_answer = false) { if (!$this->display) { return new CText(''); } //if we don't have to display this question, let's return an empty item $out = parent::renderingHtml($ref, $feedback, $rating, $rating_answer); $name = $this->getPostFieldName(); $post_data = $this->getPostData(); $li = CDOMElement::create('li', 'class:answer_open_test'); $textArea = CDOMElement::create('textarea'); $textArea->setAttribute('name', $name . '[' . self::POST_ANSWER_VAR . ']'); $textArea->setAttribute('class', 'open_answer_test'); if ($this->feedback) { $textArea->addChild(new CText($this->givenAnswer['risposta'][self::POST_ANSWER_VAR])); $textArea->setAttribute('readonly', ''); } else { if (!empty($post_data[self::POST_ANSWER_VAR])) { $textArea->addChild(new CText($post_data[self::POST_ANSWER_VAR])); } } $li->addChild($textArea); if ($_SESSION['sess_id_user_type'] != AMA_TYPE_STUDENT) { $span = CDOMElement::create('span', 'class:clozePopup,title:' . $this->id_nodo); $html .= $span->getHtml(); $div = CDOMElement::create('div', 'id:popup_' . $this->id_nodo); $div->setAttribute('style', 'display:none;'); $risposte = array(); if (!empty($this->_children)) { foreach ($this->_children as $k => $v) { $risposte[] = $v->testo . ' (' . $v->correttezza . ' ' . translateFN('Punti') . ')'; } } $div->addChild(new CText(implode('<br/>', $risposte))); $html .= $div->getHtml(); } $ref->addChild($li); return $out; }
/** * add course - test / survey association * adds a course node that contains link to test / survey too * * @global db $dh * * @param int $id_test * * @return boolean */ public function add($id_test) { $dh = $GLOBALS['dh']; $test = $dh->test_getNode($id_test); if ($dh->isError($test)) { return false; } //creo nodo di riferimento $last_node = explode('_', get_max_idFN($this->courseObj->id)); $new_id = $last_node[1] + 1; $new_node_id = $this->courseObj->id . '_' . $new_id; $url = MODULES_TEST_HTTP . '/index.php?id_test=' . $id_test; $link = CDOMElement::create('a'); $link->setAttribute('href', $url); $link->addChild(new CText($url)); $nodo_test['id'] = $new_node_id; $nodo_test['id_node_author'] = $test['id_utente']; $nodo_test['title'] = $test['titolo']; $nodo_test['name'] = $test['titolo']; $nodo_test['text'] = $link->getHtml(); $nodo_test['type'] = ADA_CUSTOM_EXERCISE_TEST; $nodo_test['parent_id'] = $this->courseObj->id . '_0'; $nodo_test['order'] = 999; $nodo_test['creation_date'] = today_dateFN(); $nodo_test['pos_x0'] = 0; $nodo_test['pos_y0'] = 0; $nodo_test['pos_x1'] = 0; $nodo_test['pos_y1'] = 0; $id_node = $dh->add_node($nodo_test); if (empty($id_node) || $dh->isError($id_node)) { return false; } $res = $dh->test_addCourseTest($this->courseObj->id, $id_test, $id_node); if (!$dh->isError($res)) { return false; } else { return true; } }
/** * build, manage and display the module's pages * * @return array * * @access public */ public function run($action = null) { /* @var $html string holds html code to be retuned */ $htmlObj = null; /* @var $path string path var to render in the help message */ $help = translateFN('Da qui puoi inserire o modifcare le opzioni per il login provider'); /* @var $status string status var to render in the breadcrumbs */ $title = translateFN('Opzioni login'); switch ($action) { case MODULES_LOGIN_EDIT_OPTIONSET: /** * edit action, display the form with passed data */ $htmlObj = CDOMElement::create('span'); $htmlObj->addChild(new CText('Le opzioni di questo provider non si configurano con un form')); default: /** * return an empty page as default action */ break; } return array('htmlObj' => $htmlObj, 'help' => $help, 'title' => $title); }
if ($debug == 1) { fclose($fpx); } /* * FINE GESTIONE PDT DA PAYPAL * */ //$dati = $message; // print_r($message); $info_div = CDOMElement::create('DIV', 'id:info_div'); $info_div->setAttribute('class', 'info_div'); $label_text = CDOMElement::create('span', 'class:info'); $label_text->addChild(new CText($message)); $info_div->addChild($label_text); $homeUser = $userObj->getHomePage(); $link_span = CDOMElement::create('span', 'class:info_link'); $link_to_home = BaseHtmlLib::link($homeUser, translateFN('vai alla home per accedere.')); $link_span->addChild($link_to_home); $info_div->addChild($link_span); //$data = new CText(translateFN('La tua iscrizione è stata effettuata con successo.')); $data = $info_div; // print_r($data->getHtml()); $path = translateFN('modulo di iscrizione'); $dati .= $link_torna_home; $field_data = array('menu' => "", 'banner' => $banner, 'path' => $path, 'data' => $info_div->getHtml(), 'help' => '', 'user_name' => $user_name, 'user_type' => $user_type, 'messages' => $user_messages->getHtml(), 'agenda' => $user_agenda->getHtml(), 'titolo_corso' => $course_name, 'annulla_iscrizione' => $link_annulla_iscrizione, 'price' => $price); } else { $dati = translateFN('Impossibile proseguire, Provider non trovato'); $field_data = array('menu' => "", 'banner' => $banner, 'data' => $dati, 'help' => '', 'user_name' => $user_name, 'user_type' => $user_type, 'messages' => $user_messages->getHtml(), 'agenda' => $user_agenda->getHtml(), 'titolo_corso' => $course_name, 'annulla_iscrizione' => $link_annulla_iscrizione, 'price' => $price); } /** * Sends data to the rendering engine
/** * function that will replace cloze entries in text * * @param array $params - matched params from regexp * @return a string of HTML * @see getPreparedText */ public function clozePlaceholder($params) { $ordine = $params[1]; $value = $params[2]; $value = '<cloze title="' . $ordine . '">' . $value . '</cloze>'; $html = $value; if ($_SESSION['sess_id_user_type'] != AMA_TYPE_STUDENT) { $span = CDOMElement::create('span', 'class:clozePopup,title:' . $this->id_nodo . '_' . $ordine); $html .= $span->getHtml(); $div = CDOMElement::create('div', 'id:popup_' . $this->id_nodo . '_' . $ordine); $div->setAttribute('style', 'display:none;'); $risposte = array(); $answers = $this->searchChild($ordine, 'ordine', true); if (!empty($answers)) { foreach ($answers as $v) { $v->correttezza = is_null($v->correttezza) ? 0 : $v->correttezza; $risposte[] = $v->testo . ' (' . $v->correttezza . ' ' . translateFN('Punti') . ')'; } } $div->addChild(new CText(implode('<br/>', $risposte))); $html .= $div->getHtml(); } return $html; }
protected static function getAddressBook(ADALoggableUser $userObj, $user_types_Ar = array(), $result_Ar = array()) { $user_type = $userObj->getType(); $address_book = CDOMElement::create('div', 'id:addressbook_div'); $buttons = CDOMElement::create('div', 'id:buttons_div'); // $users_Ar = array(); // foreach($result as $tester => $users) { // $users_Ar[$tester][$users['tipo']] = array($users['e_mail'], $users['username']); // } $selects = CDOMElement::create('div'); if (in_array(AMA_TYPE_SWITCHER, $user_types_Ar[$user_type])) { $switcher_bt = CDOMElement::create('a', 'id:js_switcher_bt, name:js_switcher_bt'); $switcher_bt->setAttribute('onclick', "showMeHideOthers('js_switcher_sel');"); $switcher_bt->addChild(new CText(translateFN('Switcher'))); $buttons->addChild($switcher_bt); $switcher_sel = CDOMElement::create('select', 'id:js_switcher_sel, name:js_switcher_sel, size:10, class: hidden_element'); $switcher_sel->setAttribute('onchange', 'add_addressee(this);'); foreach ($result_Ar as $tester_name => $user_data_Ar) { $optgroup = CDOMElement::create('optgroup'); $optgroup->setAttribute('label', $tester_name); foreach ($user_data_Ar as $user) { if ($user['tipo'] == AMA_TYPE_SWITCHER) { $option = CDOMElement::create('option', 'value:' . $user['username']); if (isset($user['cognome']) || isset($user['nome'])) { $displayname = $user['cognome'] . ' ' . $user['nome']; } else { $displayname = $user['username']; } $option->addChild(new CText($displayname)); $optgroup->addChild($option); } } $switcher_sel->addChild($optgroup); } $selects->addChild($switcher_sel); } if (in_array(AMA_TYPE_TUTOR, $user_types_Ar[$user_type])) { $practitioner_bt = CDOMElement::create('a', 'id:js_practitioner_bt, name:js_practitioner_bt'); $practitioner_bt->setAttribute('onclick', "showMeHideOthers('js_practitioner_sel');"); $practitioner_bt->addChild(new CText(translateFN('Tutor'))); $buttons->addChild($practitioner_bt); $practitioner_sel = CDOMElement::create('select', 'id:js_practitioner_sel, name: js_practitioner_sel, size:10, class: hidden_element'); $practitioner_sel->setAttribute('onchange', 'add_addressee(this);'); foreach ($result_Ar as $tester_name => $user_data_Ar) { $optgroup = CDOMElement::create('optgroup'); $optgroup->setAttribute('label', $tester_name); foreach ($user_data_Ar as $user) { if ($user['tipo'] == AMA_TYPE_TUTOR) { $option = CDOMElement::create('option', 'value:' . $user['username']); if (isset($user['cognome']) || isset($user['nome'])) { $displayname = $user['cognome'] . ' ' . $user['nome']; } else { $displayname = $user['username']; } $option->addChild(new CText($displayname)); $optgroup->addChild($option); } } $practitioner_sel->addChild($optgroup); } $selects->addChild($practitioner_sel); } if (in_array(AMA_TYPE_STUDENT, $user_types_Ar[$user_type])) { $user_bt = CDOMElement::create('a', 'id:js_user_bt, name:js_user_bt'); $user_bt->setAttribute('onclick', "showMeHideOthers('js_user_sel');"); $user_bt->addChild(new CText(translateFN('Students'))); $buttons->addChild($user_bt); $user_sel = CDOMElement::create('select', 'id:js_user_sel, name: js_user_sel, size:10, class: hidden_element'); $user_sel->setAttribute('onchange', 'add_addressee(this);'); foreach ($result_Ar as $tester => $user_data_Ar) { $optgroup = CDOMElement::create('optgroup'); $optgroup->setAttribute('label', $tester_name); foreach ($user_data_Ar as $user) { /** * @author giorgio 28/apr/2015 * * tutors are students for an ADA_SERVICE_TUTORCOMMUNITY type of course, * so add them to the address book if they're returned in the $result_Ar */ if ($user['tipo'] == AMA_TYPE_STUDENT || $user['tipo'] == AMA_TYPE_TUTOR && $userObj->getType() == AMA_TYPE_TUTOR && !$userObj->isSuper() && $user['id_utente'] != $userObj->getId()) { $option = CDOMElement::create('option', 'value:' . $user['username']); if (isset($user['cognome']) || isset($user['nome'])) { $displayname = $user['cognome'] . ' ' . $user['nome']; } else { $displayname = $user['username']; } $option->addChild(new CText($displayname)); $optgroup->addChild($option); } } $user_sel->addChild($optgroup); } $selects->addChild($user_sel); } $address_book->addChild($buttons); $address_book->addChild($selects); return $address_book; }
foreach ($errors as $err) { $err_msg .= $error_messages[$err] . "<br>"; } $err_msg .= "</strong>"; } // ***** } //end if Spedisci // ***** $destinatari_Ar = isset($form["destinatari"]) ? $form["destinatari"] : null; $destinatari = ''; if (is_array($destinatari_Ar) && count($destinatari_Ar) > 0) { foreach ($destinatari_Ar as $d) { $destinatario = trim($d); $div = CDOMElement::create('div', "id:{$destinatario}"); $checkbox = CDOMElement::create('checkbox', "name:destinatari[], value:{$destinatario}, checked: checked"); $checkbox->setAttribute('onclick', "remove_addressee('{$destinatario}');"); $div->addChild($checkbox); $div->addChild(new CText($destinatario)); $destinatari .= $div->getHtml(); } } } if (!isset($titolo)) { $titolo = ""; } if (!isset($destinatari)) { $destinatari = ""; } if (!isset($course_title)) { $course_title = "";
/** * Control rendering * * @return string * * @see constructComponents */ public function render() { $this->constructComponents(); $html = ''; foreach ($this->item as $field => $v) { if (is_null($v)) { continue; } if ($this->clonable) { $this->item[$field]->setAttribute('disabled', ''); } if ($field == 'record' || $field == 'ordine') { $html .= $this->item[$field]->getHtml(); } else { $div = CDOMElement::create('div'); $div->setAttribute('class', 'answers_cell ' . $field); $div->addChild($this->item[$field]); $html .= $div->getHtml(); } } if ($this->modifiable) { $div = CDOMElement::create('div'); $div->setAttribute('class', 'answers_cell operations'); $a = CDOMElement::create('a'); $a->addChild(new CText(translateFN('Cancella'))); $a->setAttribute('href', 'javascript:void(0);'); if (!is_null($this->id)) { $a->setAttribute('onclick', "del(this," . $this->id . ");"); } else { $a->setAttribute('onclick', "del(this);"); } $div->addChild($a); $html .= $div->getHtml(); } if ($this->clonable) { $div = CDOMElement::create('div', 'class:clonable'); $html .= $div->getHtml(); } $div = CDOMElement::create('div', 'class:answer_content'); $div->addChild(new CText($html)); return $div->getHtml(); }
} if (!$isPublicCourse) { $add_instance_link = BaseHtmlLib::link("add_instance.php?id_course={$courseId}", $add_instance_img->getHtml()); } if (isset($add_instance_link)) { $title = translateFN('Aggiungi classe'); $div_AddInstances = CDOMElement::create('div'); $div_AddInstances->setAttribute('title', $title); $div_AddInstances->setAttribute('class', 'tooltip'); $div_AddInstances->addChild($add_instance_link); $actions[] = $div_AddInstances; } $delete_course_link = BaseHtmlLib::link("delete_course.php?id_course={$courseId}", $delete_img->getHtml()); if (isset($delete_course_link)) { $title = translateFN('Cancella corso'); $div_delete = CDOMElement::create('div'); $div_delete->setAttribute('title', $title); $div_delete->setAttribute('class', 'tooltip'); $div_delete->addChild($delete_course_link); $actions[] = $div_delete; } $actions = BaseHtmlLib::plainListElement('class:inline_menu', $actions); $servicelevel = null; /* if isset $_SESSION['service_level'] it means that the istallation supports course type */ if (isset($_SESSION['service_level'][$course[4]])) { $servicelevel = $_SESSION['service_level'][$course[4]]; } if (!isset($servicelevel)) { $servicelevel = DEFAULT_SERVICE_TYPE_NAME; } $tbody_data[] = array($imgDetails, $courseId, $course[1], translateFN($servicelevel), $course[2], $course[3], $actions);
header('Location: ' . $location); exit();*/ } } else { $form = new UserProfileForm($languages); $user_dataAr = $userObj->toArray(); unset($user_dataAr['password']); $user_dataAr['email'] = $user_dataAr['e_mail']; unset($user_dataAr['e_mail']); $form->fillWithArrayData($user_dataAr); $help = translateFN('Modifica dati utente'); } $label = translateFN('Modifica dati utente'); $layout_dataAr['JS_filename'] = array(JQUERY, JQUERY_UI, JQUERY_MASKEDINPUT, JQUERY_NO_CONFLICT, ROOT_DIR . '/js/include/jquery/pekeUpload/pekeUpload.js'); $layout_dataAr['CSS_filename'] = array(JQUERY_UI_CSS, ROOT_DIR . '/js/include/jquery/pekeUpload/pekeUpload.css'); $maxFileSize = (int) (ADA_FILE_UPLOAD_MAX_FILESIZE / (1024 * 1024)); $optionsAr['onload_func'] = 'initDoc(' . $maxFileSize . ',' . $userObj->getId() . ');'; // $optionsAr['onload_func'] = 'initDateField();'; /* * Display error message if the password is incorrect */ if (isset($_GET['message'])) { $help = $_GET['message']; } $content_dataAr = array('user_name' => $user_name, 'user_type' => $user_type, 'messages' => $user_messages->getHtml(), 'agenda' => $user_agenda->getHtml(), 'status' => $status, 'course_title' => translateFN('Modifica dati utente'), 'dati' => $form->getHtml(), 'help' => $help); $imgAvatar = $userObj->getAvatar(); $avatar = CDOMElement::create('img', 'src:' . $imgAvatar); $avatar->setAttribute('class', 'img_user_avatar'); $content_dataAr['user_modprofilelink'] = $userObj->getEditProfilePage(); $content_dataAr['user_avatar'] = $avatar->getHtml(); ARE::render($layout_dataAr, $content_dataAr, NULL, $optionsAr);
foreach ($tutor_monitoring as $k => $v) { $ul = CDOMElement::create('ul'); if (!empty($v)) { foreach ($v as $i => $l) { $nome_corso = $l['titolo'] . (!empty($l['title']) ? ' - ' . $l['title'] : ''); $li = CDOMElement::create('li'); $li->addChild(new CText($nome_corso)); $ul->addChild($li); } } else { $nome_corso = translateFN('Nessun corso trovato'); $li = CDOMElement::create('li'); $li->addChild(new CText($nome_corso)); $ul->addChild($li); } $tip = CDOMElement::create('div', 'id:tooltipContent' . $k); $tip->addChild(new CText(translateFN('Tutor assegnato ai seguenti corsi:<br />'))); $tip->addChild($ul); $tooltips .= $tip->getHtml(); $js .= 'new Tooltip("tooltip' . $k . '", "tooltipContent' . $k . '", {DOM_location: {parentId: "header"}, className: "tooltip", offset: {x:+15, y:0}, hook: {target:"rightMid", tip:"leftMid"}});' . "\n"; } $js .= '</script>'; $tooltips .= $js; //end $data = new TutorAssignmentForm($tutors, $id_tutor_old); $data->fillWithArrayData(array('id_tutor_old' => $id_tutor_old, 'id_course_instance' => $courseInstanceObj->getId(), 'id_course' => $courseObj instanceof Course ? $courseObj->getId() : null)); } else { $data = new CText(translateFN('Classe non trovata')); } } $title = translateFN('Assegnazione di un tutor alla classe');
/** * abstract function that will replace cloze entries in text * * @param array $params - matched params from regexp * @return a string of HTML * @see getPreparedText */ public function clozePlaceholder($params) { $ordine = $params[1]; $name = $this->getPostFieldName(); $post_data = $this->getPostData(); $class = 'normal_cloze_question_test'; $obj = CDOMElement::create('text'); $obj->setAttribute('name', $name . '[' . self::POST_ANSWER_VAR . '][' . $ordine . ']'); $obj->setAttribute('value', $post_data[self::POST_ANSWER_VAR][$ordine]); if ($this->feedback) { $obj->setAttribute('readonly', ''); $risposta = $this->givenAnswer['risposta'][self::POST_ANSWER_VAR][$ordine]; if (!empty($risposta)) { $obj->setAttribute('value', $risposta); if (!empty($this->_children)) { foreach ($this->_children as $answer) { if ($this->isAnswerCorrect($answer, $ordine, $risposta)) { $class .= ' right_answer_test'; } else { $class .= ' wrong_answer_test'; } } } } else { $class .= ' empty_answer_test'; } } $correctAnswer = false; if ($this->feedback && ($this->rating || $this->rating_answer) && !strstr($class, 'right_answer_test')) { $correctAnswer = $this->getMostCorrectAnswer($ordine); if ($correctAnswer) { $popup = CDOMElement::create('div', 'id:popup_' . $this->id_nodo . '_' . $ordine); $popup->setAttribute('style', 'display:none;'); $popup->addChild(new CText($correctAnswer->testo)); if ($this->rating) { $popup->addChild(new CText(' (' . $correctAnswer->correttezza . ' ' . translateFN('Punti') . ')')); } $obj->setAttribute('class', $class . ' answerPopup'); $obj->setAttribute('title', $this->id_nodo . '_' . $ordine); $html = $obj->getHtml() . $popup->getHtml(); } } if (!$correctAnswer) { $obj->setAttribute('class', $class); $html = $obj->getHtml(); } if ($_SESSION['sess_id_user_type'] != AMA_TYPE_STUDENT) { $span = CDOMElement::create('span', 'class:clozePopup,title:' . $this->id_nodo . '_' . $ordine); $html .= $span->getHtml(); $div = CDOMElement::create('div', 'id:popup_' . $this->id_nodo . '_' . $ordine); $div->setAttribute('style', 'display:none;'); $risposte = array(); if (!empty($this->_children)) { foreach ($this->_children as $k => $v) { if ($v->ordine == $ordine) { $v->correttezza = is_null($v->correttezza) ? 0 : $v->correttezza; $risposte[] = $v->testo . ' (' . $v->correttezza . ' ' . translateFN('Punti') . ')'; } } } $div->addChild(new CText(implode('<br/>', $risposte))); $html .= $div->getHtml(); } return $html; }
$duration = $course['duration_hours']; } else { $duration = 0; } $dataAr = array($thead_data[0] => $span_course_title->getHtml(), $thead_data[1] => $creationDate, $thead_data[2] => $publicationDate, $thead_data[3] => $span_serviceType->getHtml(), $thead_data[4] => $duration, $thead_data[5] => $credits, $thead_data[6] => $nodeNumber, $thead_data[7] => $activitiesNumber, $thead_data[8] => $instanceNumber); $caption = translateFN('Dettaglio corsi autore'); /* * Settings for Sort date columns in DataTable */ $retArray['columnDefs'][] = array('sType' => 'date-eu', 'aTargets' => [1]); $retArray['columnDefs'][] = array('sType' => 'date-eu', 'aTargets' => [2]); } } } array_push($total_results, $dataAr); } $result_table = BaseHtmlLib::tableElement('class:User_table', $thead_data, $total_results, null, $caption); $result = $result_table->getHtml(); // $retArray=array("status"=>"OK","html"=>$result); $retArray['status'] = 'OK'; $retArray['html'] = $result; } else { $span_error = CDOMElement::create('span'); $span_error->setAttribute('class', 'ErrorSpan'); $span_error->addChild(new CText(translateFN('Nessun dato trovato'))); $retArray['status'] = 'ERROR'; $retArray['html'] = $span_error->getHtml(); // $retArray=array("status"=>"ERROR","html"=>$span_error->getHtml()); } echo json_encode($retArray); }
$buttonDIV->addChild($buttonNext); $importSelectNode->addChild($spanHelpText); $importSelectNode->addChild($courseTreeDIV); $importSelectNode->addChild($courseTreeLoading); $importSelectNode->addChild($spanSelCourse); $importSelectNode->addChild($spanSelNode); $importSelectNode->addChild($buttonDIV); $step3DIV = CDOMElement::create('div', 'class:importFormStep3'); $step3DIV->setAttribute('style', 'display:none'); $divProgressBar = CDOMElement::create('div', 'id:progressbar'); $divProgressLabel = CDOMElement::create('div', 'id:progress-label'); $divProgressBar->addChild($divProgressLabel); $divCourse = CDOMElement::create('div', 'class:currentCourse'); $divCourse->addChild(new CText(translateFN('Importazione dal corso:') . ' ')); $spanCourse = CDOMElement::create('span', 'id:coursename'); $divCourse->addChild(new CText($spanCourse->getHtml())); $divCopyZip = CDOMElement::create('div', 'class:copyzip'); $divCopyZip->addChild(new CText(translateFN('Copia files multimediali in corso'))); $divCopyZip->setAttribute('style', 'display:none'); $step3DIV->addChild($divProgressBar); $step3DIV->addChild($divCourse); $step3DIV->addChild($divCopyZip); $data = $step1DIV->getHtml() . $step2DIV->getHtml() . $importSelectNode->getHtml() . $step3DIV->getHtml(); } } $content_dataAr = array('user_name' => $user_name, 'user_type' => $user_type, 'messages' => $user_messages->getHtml(), 'agenda' => $user_agenda->getHtml(), 'status' => $status, 'label' => translateFN('Importazione corso'), 'data' => $data); $layout_dataAr['JS_filename'] = array(JQUERY, JQUERY_UI, JQUERY_NO_CONFLICT, MODULES_IMPEXPORT_PATH . '/js/pekeUpload.js', MODULES_IMPEXPORT_PATH . '/js/tree.jquery.js', MODULES_IMPEXPORT_PATH . '/js/import.js'); $layout_dataAr['CSS_filename'] = array(JQUERY_UI_CSS, MODULES_IMPEXPORT_PATH . '/layout/pekeUpload.css', MODULES_IMPEXPORT_PATH . '/layout/jqtree.css'); $maxFileSize = (int) (ADA_FILE_UPLOAD_MAX_FILESIZE / (1024 * 1024)); $optionsAr['onload_func'] = 'initDoc(' . $maxFileSize . ');'; ARE::render($layout_dataAr, $content_dataAr, NULL, $optionsAr);
// if a tabs container is needed, create one if (!isset($tabsContainer)) { $tabsContainer = CDOMElement::create('div', 'id:tabs'); $tabsUL = CDOMElement::create('ul'); $tabsContainer->addChild($tabsUL); } // add a tab only if there's something to fill it with if (isset($container) || isset($currentForm)) { // create a LI $tabsLI = CDOMElement::create('li'); // add the save icon to the link $tabsLI->addChild(CDOMElement::create('span', 'class:ui-icon ui-icon-disk,id:tabSaveIcon' . $currTab)); // add a link to the div that holds tab content $tabsLI->addChild(BaseHtmlLib::link('#divTab' . $currTab, $tabsArray[$currTab][0])); $tabsUL->addChild($tabsLI); $tabContents[$currTab] = CDOMElement::create('div', 'id:divTab' . $currTab); if (isset($container)) { // add the container to the current tab $tabContents[$currTab]->addChild($container); } else { if (isset($currentForm)) { // if form of current tab wants the UserExtraForm fields embedded, obey it if (isset($tabsArray[$currTab]['withExtra']) && $tabsArray[$currTab]['withExtra'] === true) { UserExtraForm::addExtraControls($currentForm); $currentForm->fillWithArrayData($user_dataAr); } $tabContents[$currTab]->addChild(new CText($currentForm->render())); unset($currentForm); } } $tabsContainer->addChild($tabContents[$currTab]);
function _get_course_info($id_course) { $common_dh = $GLOBALS['common_dh']; $serviceAr = $common_dh->get_service_info_from_course($id_course); if (!AMA_DataHandler::isError($serviceAr)) { $service_name = $serviceAr[1]; $service_level = $serviceAr[3]; $service_duration = $serviceAr[4]; $service_max_meeting = $serviceAr[5]; $service_max_meeting_time = $serviceAr[7] / 60; } $providerAr = $common_dh->get_tester_info_from_id_course($id_course); if (!AMA_DataHandler::isError($providerAr)) { $provider = $providerAr['puntatore']; $provider_dsn = MultiPort::getDSN($provider); $provider_name = $providerAr['nome']; $service_country = $providerAr['nazione'] . "/" . $providerAr['provincia']; } $provider_dh = AMA_DataHandler::instance($provider_dsn); $dataHa = $provider_dh->get_course($id_course); if (AMA_DataHandler::isError($dataHa) || !is_array($dataHa)) { $infomsg = $dataHa->getMessage(); if ($dataHa->code == AMA_ERR_NOT_FOUND) { $service_description = translateFN("Il provider non fornisce attualmente questo servizio"); } // header("Location: $error?err_msg=$msg"); //return $infomsg; } else { if (!empty($dataHa['nome'])) { $course_infoHa = array(); // 1.info from table modello_corso $service_title = $dataHa['titolo']; // $service_name = $dataHa['nome']; // 2. description of instance from table modello_corso $service_instance_description = $dataHa['descr']; // 3. full description from node id_nodo_iniziale $id_desc = $id_course . "_" . $dataHa['id_nodo_iniziale']; $user_level = "999"; $nodeHa = $provider_dh->get_node_info($id_desc); if (AMA_DataHandler::isError($nodeHa)) { // $errorObj = new ADA_error($nodeHa); //FIXME: mancano gli altri dati $service_description = translateFN("Il provider non fornisce attualmente questo servizio"); } else { $service_description = $nodeHa['text']; } } else { $service_description = translateFN("Il provider non fornisce attualmente questo servizio"); } } // check on level? /* if ($service_level > 1){ $require_link = "<a href=" . HTTP_ROOT_DIR . "/browsing/registration.php?id_course=$id_course>" .translateFN('Richiedi'). "</a>"; } else { $require_link = "<a href=" . HTTP_ROOT_DIR . "/browsing/view.php?id_course=$id_course&id_node=$id_desc>" .translateFN('Entra'). "</a>"; } */ if ($service_instance_description == NULL) { $service_instance_description = level2descriptionFN($service_level); } $service_div = CDOMElement::create('div', 'id:service_info'); $thead_data = array(translateFN('Fornitore'), translateFN('Nome'), translateFN('Paese'), translateFN('Livello'), translateFN('Durata (gg)'), translateFN('Numero incontri'), translateFN('Durata incontro (minuti)'), translateFN('Descrizione servizio'), translateFN('Descrizione dettagliata')); $tbody_dataAr = array(); $tbody_dataAr[] = array($provider_name, $service_name, $service_country, level2stringFN($service_level), $service_duration, $service_max_meeting, $service_max_meeting_time, $service_description, $service_instance_description); $element_attributes = ""; $serviceTable = BaseHtmlLib::tableElement($element_attributes, $thead_data, $tbody_dataAr); $service_div->addChild($serviceTable); $service_data = $service_div->getHtml(); return $service_data; }
$retArray = array("status" => "ERROR", "msg" => translateFN("Nessuna frase trovata"), "html" => $result); } else { $thead_data = array(null, translateFN('Testo'), translateFN('Azioni'), translateFN('TestoCompleto'), translateFN('CodLingua'), translateFN('Id')); $total_results = array(); //$imgDetails='<img class="imgEx tooltip" src='.HTTP_ROOT_DIR.'/layout/ada_blu/img/details_open.png >'; $imgDetails = CDOMElement::create('img', 'src:' . HTTP_ROOT_DIR . '/layout/' . $_SESSION['sess_template_family'] . '/img/details_open.png'); $imgDetails->setAttribute('class', 'imgDetls tooltip'); $imgDetails->setAttribute('title', translateFN('espande/riduce il testo')); foreach ($result as $row) { $testoCompleto = $row['testo_messaggio']; $testoRidotto = substr($row['testo_messaggio'], 0, 30); if (strlen($testoCompleto) > 30) { $testoRidotto = $testoRidotto . '...'; } $id_message = $row['id_messaggio']; $newButton = CDOMElement::create('button'); $newButton->setAttribute('class', 'buttonTranslate tooltip'); $newButton->addChild(new CText(translateFN('Clicca per aggiornare la traduzione'))); $temp_results = array(null => $imgDetails, translateFN('Testo') => $testoRidotto, translateFN('Azioni') => $newButton, translateFN('TestoCompleto') => $testoCompleto, translateFN('CodLingua') => $language_code, translateFN('Id') => $id_message); array_push($total_results, $temp_results); } $result_table = BaseHtmlLib::tableElement('id:table_result', $thead_data, $total_results); $result = $result_table->getHtml(); $retArray = array("status" => "OK", "msg" => translateFN("Ricerca eseguita con successo"), "html" => $result); } } } } else { $retArray = array("status" => "ERROR", "msg" => translateFN("Dati inseriti non validi"), "html" => null); } echo json_encode($retArray);
$lielem = CDOMElement::create('li'); $link = CDOMElement::create('a', 'href:view.php?id_node=' . $node['id_nodo'] . '&id_course=' . $courseId . '&id_course_instance=' . $courseInstanceId); $link->addChild(new CText($node['nome'])); $lielem->addChild($link); $olelem->addChild($lielem); unset($lielem); unset($link); } } $new_nodes_html = $olelem->getHtml(); } // @author giorgio 24/apr/2013 forum messages (NOTES!!!!! BE WARNED: THESE ARE NOTES!!!) $msg_forum_count = MultiPort::count_new_notes($userObj, $courseInstanceId); //display a direct link to forum if there are new messages if ($msg_forum_count > 0) { $link = CDOMElement::create('a', 'href:main_index.php?op=forum&id_course=' . $courseId . '&id_course_instance=' . $courseInstanceId); $link->addChild(new CText($msg_forum_count)); $msg_forum_count = $link->getHtml(); unset($link); } // @author giorgio 24/apr/2013 private messages $msg_simple_count = 0; $msg_simpleAr = MultiPort::getUserMessages($userObj); foreach ($msg_simpleAr as $msg_simple_provider) { $msg_simple_count += count($msg_simple_provider); } // @author giorgio 24/apr/2013 agenda messages $msg_agenda_count = 0; $msg_agendaAr = MultiPort::getUserAgenda($userObj); foreach ($msg_agendaAr as $msg_agenda_provider) { $msg_agenda_count += count($msg_agenda_provider);
$help .= ' ' . translateFN('di cui sei tutor'); break; } $help .= '.'; $helpSPAN = CDOMElement::create('span'); $helpSPAN->setAttribute('class', 'help first'); $helpSPAN->addChild(new CText($help)); $helpDIV->addChild($helpSPAN); $helpSPAN = CDOMElement::create('span'); $helpSPAN->setAttribute('class', 'help last'); $helpSPAN->addChild(new CText(translateFN('Seleziona quella a cui vuoi andare da questo elenco') . ':')); $helpDIV->addChild($helpSPAN); $instances = explode(',', $_GET['instances']); $selectInstanceOL = CDOMElement::create('ol', 'class:select-instance'); foreach ($instances as $instanceID) { $courseInstanceObj = new Course_instance($instanceID); $selectLI = CDOMElement::create('li'); $link = CDOMElement::create('a', 'href:view.php?id_node=' . trim($_GET['node']) . '&id_course=' . $courseInstanceObj->id_corso . '&id_course_instance=' . $courseInstanceObj->id); $link->addChild(new CText($courseInstanceObj->title)); $selectLI->addChild($link); $selectInstanceOL->addChild($selectLI); } $data = $selectInstanceOL->getHtml(); $layout_dataAr['JS_filename'] = array(JQUERY, JQUERY_MASKEDINPUT, JQUERY_NO_CONFLICT); $title = translateFN("Scegli un'istanza"); $content_dataAr = array('user_name' => $user_name, 'data' => $data, 'help' => $helpDIV->getHtml(), 'status' => $status); /** * Sends data to the rendering engine */ ARE::render($layout_dataAr, $content_dataAr); }
private static function controlContainer($name, $label_text, $error_message = NULL) { $div = CDOMElement::create('div', "id:div_{$name}"); if ($error_message != NULL) { $error_div = CDOMElement::create('div', 'class:error'); $error_div->addChild(new CText($error_message)); $div->addChild($error_div); } $label = CDOMElement::create('label', "for:{$name}"); $label->addChild(new CText(translateFN($label_text))); $div->addChild($label); return $div; }
/** * generate HTML for login provider configuration page */ public function generateConfigPage() { $configIndexDIV = CDOMElement::create('div', 'id:configindex'); $newButton = CDOMElement::create('button'); $newButton->setAttribute('class', 'newButton top tooltip'); $newButton->setAttribute('title', translateFN('Clicca per creare un nuova fonte')); $newButton->setAttribute('onclick', 'javascript:editOptionSet(null);'); $newButton->addChild(new CText(translateFN('Nuova Fonte'))); $configIndexDIV->addChild($newButton); $tableOutData = array(); $optionSetList = $this->getAllOptions(); if (!AMA_DB::isError($optionSetList)) { $labels = array(translateFN('nome'), translateFN('host'), translateFN('stato'), translateFN('azioni')); foreach ($optionSetList as $i => $elementArr) { $isEnabled = intval($elementArr['enabled']) === 1; unset($elementArr['enabled']); unset($elementArr['order']); $keys = array_keys($elementArr); $values = array_values($elementArr); $links = array(); $linksHtml = ""; for ($j = 0; $j < 5; $j++) { switch ($j) { case 0: $type = 'edit'; $title = translateFN('Modifica Fonte'); $link = 'editOptionSet(' . $i . ');'; break; case 1: $type = 'delete'; $title = translateFN('Cancella Fonte'); $link = 'deleteOptionSet($j(this), ' . $i . ' , \'' . urlencode(translateFN("Questo cancellerà l'elemento selezionato")) . '\');'; break; case 2: $type = $isEnabled ? 'disable' : 'enable'; $title = $isEnabled ? translateFN('Disabilita') : translateFN('Abilita'); $link = 'setEnabledOptionSet($j(this), ' . $i . ', ' . ($isEnabled ? 'false' : 'true') . ');'; break; case 3: $type = 'up'; $title = translateFN('Sposta su'); $link = 'moveOptionSet($j(this),' . $i . ',-1);'; break; case 4: $type = 'down'; $title = translateFN('Sposta giu'); $link = 'moveOptionSet($j(this),' . $i . ',1);'; break; } if (isset($type)) { $links[$j] = CDOMElement::create('li', 'class:liactions'); $linkshref = CDOMElement::create('button'); $linkshref->setAttribute('onclick', 'javascript:' . $link); $linkshref->setAttribute('class', $type . 'Button tooltip'); $linkshref->setAttribute('title', $title); $links[$j]->addChild($linkshref); // unset for next iteration unset($type); } } if (!empty($links)) { $linksul = CDOMElement::create('ul', 'class:ulactions'); foreach ($links as $link) { $linksul->addChild($link); } $linksHtml = $linksul->getHtml(); } else { $linksHtml = ''; } $tableOutData[$i] = array($labels[0] => $elementArr['name'], $labels[1] => $elementArr['host'], $labels[2] => $isEnabled ? translateFN('Abilitata') : translateFN('Disabilitata'), $labels[3] => $linksHtml); } $OutTable = BaseHtmlLib::tableElement('id:complete' . strtoupper(get_class($this)) . 'List', $labels, $tableOutData, '', translateFN('Elenco delle fonti ' . strtoupper($this->loadProviderName()))); $configIndexDIV->addChild($OutTable); // if there are more than 10 rows, repeat the add new button below the table if (count($optionSetList) > 10) { $bottomButton = clone $newButton; $bottomButton->setAttribute('class', 'newButton bottom tooltip'); $configIndexDIV->addChild($bottomButton); } } // if (!AMA_DB::isError($optionSetList)) return $configIndexDIV; }
} } } break; case 'view': default: $exercise = ExerciseDAO::getExercise($id_node); if ($user_level < $exercise->getExerciseLevel()) { $form = translateFN("Esercizio di livello superiore al tuo"); } else { $viewer = ExerciseViewerFactory::create($exercise->getExerciseFamily()); $action = 'exercise.php'; $form = $viewer->getViewingForm($userObj, $exercise, $sess_id_course_instance, $action); // vito 26 gennaio 2009 if (($id = ExerciseDAO::getNextExerciseId($exercise, $sess_id_user)) != NULL) { $next_exercise_menu_link = CDOMElement::create('a'); $next_exercise_menu_link->setAttribute('href', "{$http_root_dir}/browsing/exercise.php?id_node={$id}"); $next_exercise_menu_link->addCHild(new CText(translateFN('Prossimo esercizio'))); $dataHa['go_back'] .= $next_exercise_menu_link->getHtml(); } } $dataHa['exercise'] = $form; $node_title = $exercise->getTitle(); $icon = CourseViewer::getCSSClassNameForExerciseType($exercise->getExerciseFamily()); break; } /* * Actions menu */ if ($id_profile == AMA_TYPE_AUTHOR) { /*