Example #1
0
function addtest($object_test)
{
    checkPerm('view', false, 'storage');
    $lang =& DoceboLanguage::createInstance('test');
    if (!is_a($object_test, 'Learning_Test')) {
        $_SESSION['last_error'] = $lang->def('_OPERATION_FAILURE');
        Util::jump_to('' . $object_test->back_url . '&create_result=0');
    }
    require_once _base_ . '/lib/lib.form.php';
    $url_encode = htmlentities(urlencode($object_test->back_url));
    $GLOBALS['page']->add(getTitleArea($lang->def('_TEST_SECTION'), 'test') . '<div class="std_block">' . getBackUi(Util::str_replace_once('&', '&amp;', $object_test->back_url) . '&amp;create_result=0', $lang->def('_BACK')) . Form::getFormHeader($lang->def('_TEST_ADD_FORM')) . Form::OpenForm('addtest_form', 'index.php?modname=test&amp;op=instest') . Form::openElementSpace() . Form::getHidden('back_url', 'back_url', htmlentities(urlencode($object_test->back_url))) . Form::getTextfield($lang->def('_TITLE'), 'title', 'title', '255') . Form::getTextarea($lang->def('_DESCRIPTION'), 'textof', 'textof') . Form::closeElementSpace() . Form::openButtonSpace() . Form::getButton('button_ins', 'button_ins', $lang->def('_TEST_INSERT')) . Form::closeButtonSpace() . Form::closeForm() . '</div>', 'content');
}
Example #2
0
function additem($object_item)
{
    //checkPerm( 'view', FALSE, 'storage' );
    $lang =& DoceboLanguage::createInstance('scorm', 'lms');
    require_once _base_ . '/lib/lib.form.php';
    $form = new Form();
    //area title
    $GLOBALS['page']->add(getTitleArea($lang->getLangText('_SCORMIMGSECTION'), 'scorm', $lang->getLangText('_SCORMSECTIONNAME')));
    $GLOBALS['page']->add('<div class="std_block">' . getBackUi(Util::str_replace_once('&', '&amp;', $object_item->back_url) . '&amp;create_result=0', $lang->getLangText('_BACK_TOLIST')));
    $GLOBALS['page']->add(Form::getFormHeader($lang->def('_SCORM_ADD_FORM')));
    $GLOBALS['page']->add($form->openForm("scormform", "index.php?modname=scorm&amp;op=insitem", false, false, 'multipart/form-data'));
    $GLOBALS['page']->add($form->openElementSpace());
    $GLOBALS['page']->add($form->getHidden("back_url", "back_url", htmlentities(urlencode($object_item->back_url))));
    $GLOBALS['page']->add($form->getFilefield($lang->getLangText('_CONTENTPACKAGE'), "attach", "attach"));
    $GLOBALS['page']->add($form->getCheckbox($lang->getLangText('_SCORMIMPORTRESOURCES'), "lesson_resources", "lesson_resources", "import"));
    $GLOBALS['page']->add($form->closeElementSpace());
    $GLOBALS['page']->add($form->openButtonSpace());
    $GLOBALS['page']->add($form->getButton("scorm_add_submit", "scorm_add_submit", $lang->getLangText('_SCORMLOAD')));
    $GLOBALS['page']->add($form->closeButtonSpace());
    $GLOBALS['page']->add($form->closeForm() . '</div>');
}
Example #3
0
function adminManager_lang_course()
{
    checkPerm('view');
    require_once _base_ . '/lib/lib.form.php';
    $lang =& DoceboLanguage::createInstance('adminrules', 'framework');
    $adminidst = importVar('adminidst', true, 0);
    $user_pref = new UserPreferences($adminidst);
    if (isset($_POST['save'])) {
        $re = $user_pref->setPreference('admin_rules.user_lang_assigned', isset($_POST['admin_lang']) ? urlencode(serialize($_POST['admin_lang'])) : '');
        Util::jump_to('index.php?modname=admin_manager&op=view&result=' . ($re ? 1 : 0));
    }
    $all_languages = Docebo::langManager()->getAllLangCode();
    $assigned_lang = unserialize(urldecode($user_pref->getAdminPreference('admin_rules.user_lang_assigned')));
    $GLOBALS['page']->add(getTitleArea($lang->def('_ADMIN_MANAGMENT'), 'admin_managmer', $lang->def('_ADMIN_MANAGMENT')) . '<div class="std_block">' . Form::getFormHeader($lang->def('_SELECT_LANG_TO_ASSIGN')) . Form::openForm('admin_lang_editing', 'index.php?modname=admin_manager&amp;op=edit_lang') . Form::openElementSpace() . Form::getHidden('adminidst', 'adminidst', $adminidst), 'content');
    while (list(, $lang_code) = each($all_languages)) {
        $GLOBALS['page']->add(Form::getCheckbox('<img src="' . getPathImage('cms') . 'language/' . $lang_code . '.png" alt="' . $lang_code . '" /> ' . $lang_code, 'admin_lang_' . $lang_code, 'admin_lang[' . $lang_code . ']', '1', isset($assigned_lang[$lang_code])), 'content');
    }
    $GLOBALS['page']->add(Form::closeElementSpace() . Form::openButtonSpace() . Form::getButton('save', 'save', $lang->def('_SAVE')) . Form::getButton('undo_pref', 'undo_pref', $lang->def('_UNDO')) . Form::closeButtonSpace() . Form::closeForm() . '</div>', 'content');
}
Example #4
0
function ioTask_UITaskRun(&$module, $action)
{
    checkPerm('view');
    require_once _base_ . '/lib/lib.form.php';
    $connMgr =& $module->get_connMgr();
    $lang =& $module->get_lang();
    $out =& $module->get_out();
    $form = new Form();
    $dimport = new DoceboImport();
    $params = $connMgr->get_task_byname(key($action));
    $task_name = $params[CONNMGR_TASK_NAME];
    $out->setWorkingZone('content');
    $out->add(getTitleArea($lang->def('_TASKS'), 'iotask'));
    $out->add('<div class="std_block">');
    $out->add($form->getFormHeader($lang->def('_TASK_RUNNED')));
    $out->add($form->openForm('task_delete', 'index.php?modname=iotask&op=display&gotab=tasks'));
    $out->add($form->openElementSpace());
    $out->add($form->getHidden('task_name', 'task_name', $task_name));
    $report = $dimport->execute_task($task_name);
    if (!is_array($report)) {
        $out->add($report);
    } else {
        $out->add($form->getLineBox($lang->def('_TASK_INSERTED'), $report[0]['inserted']));
        $out->add($form->getLineBox($lang->def('_OPERATION_SUCCESSFUL'), $report[0]['removed']));
        $out->add($form->getLineBox($lang->def('_OPERATION_FAILURE'), count($report) - 1));
        foreach ($report as $index => $elem_report) {
            if ($index !== 0) {
                $out->add($index . ' - ' . '(' . implode(', ', $report[$index][0]) . ')' . ' - ' . $report[$index][1]);
            }
        }
    }
    $out->add($form->closeElementSpace());
    $out->add($form->openButtonSpace());
    $out->add($form->getButton('close', 'close', $lang->def('_CLOSE')));
    $out->add($form->closeButtonSpace());
    $out->add($form->closeForm());
    $out->add('</div>');
}
Example #5
0
 /**
  * this function create a new field for future use
  *
  * @param  string	$back	indicates the return url
  * @return nothing
  *
  * @access public
  */
 function create($back)
 {
     $back_coded = htmlentities(urlencode($back));
     $array_lang = array();
     $std_lang =& DoceboLanguage::createInstance('standard');
     $lang =& DoceboLanguage::createInstance('field');
     $array_lang = Docebo::langManager()->getAllLangCode();
     $out =& $GLOBALS['page'];
     if (isset($_POST['undo'])) {
         //undo action
         Util::jump_to($back . '&result=undo');
     }
     if (isset($_POST['save_field_' . $this->getFieldType()])) {
         //insert mandatory translation
         $mand_lang = getLanguage();
         $show_on = '';
         if (isset($_POST['show_on_platform'])) {
             while (list($code, ) = each($_POST['show_on_platform'])) {
                 $show_on .= $code . ',';
             }
         }
         //control if all is ok
         if (!isset($_POST['new_freetext'][$mand_lang])) {
             $out->add(getErrorUi($lang->def('_ERR_MUST_DEF_MANADATORY_TRANSLATION')) . getBackUi($this->getUrl() . '&amp;type_field=' . $this->getFieldType() . '&amp;back=' . $back_coded, $std_lang->def('_BACK')), 'content');
             return;
         }
         if ($_POST['new_freetext'][$mand_lang] == $lang->def('_FIELD_NAME') || trim($_POST['new_freetext'][$mand_lang]) == '') {
             $out->add(getErrorUi($lang->def('_ERR_MUST_DEF_MANADATORY_TRANSLATION')) . getBackUi($this->getUrl() . '&amp;type_field=' . $this->getFieldType() . '&amp;back=' . $back_coded, $std_lang->def('_BACK')), 'content');
             return;
         }
         $use_multilang = isset($_POST['use_multi_lang']) ? 1 : 0;
         //insert mandatory field
         if (!sql_query("\r\n\t\t\tINSERT INTO " . $this->_getMainTable() . "\r\n\t\t\t(type_field, lang_code, translation, show_on_platform, use_multilang) VALUES\r\n\t\t\t('" . $this->getFieldType() . "', '" . $mand_lang . "', '" . $_POST['new_freetext'][$mand_lang] . "', '" . $show_on . "', '" . $use_multilang . "') ")) {
             Util::jump_to($back . '&result=fail');
         }
         list($id_common) = sql_fetch_row(sql_query("SELECT LAST_INSERT_ID()"));
         if (!sql_query("\r\n\t\t\tUPDATE " . $this->_getMainTable() . "\r\n\t\t\tSET id_common = '" . (int) $id_common . "',\r\n\t\t\t\tshow_on_platform = '" . $show_on . "',\r\n\t\t\t\tuse_multilang = '" . $use_multilang . "'\r\n\t\t\tWHERE idField = '" . (int) $id_common . "'")) {
             Util::jump_to($back . '&result=fail');
         }
         $re = true;
         //insert other field
         foreach ($_POST['new_freetext'] as $lang_code => $translation) {
             if ($mand_lang != $lang_code && $translation != $lang->def('_FIELD_NAME') && trim($translation) != '') {
                 $re_ins = sql_query("\r\n\t\t\t\t\tINSERT INTO " . $this->_getMainTable() . "\r\n\t\t\t\t\t(type_field, id_common, lang_code, translation, show_on_platform, use_multilang) VALUES\r\n\t\t\t\t\t('" . $this->getFieldType() . "', '" . (int) $id_common . "', '" . $lang_code . "', '" . $translation . "', '" . $show_on . "', '" . $use_multilang . "') ");
                 $re = $re && $re_ins;
             }
         }
         Util::jump_to($back . '&result=' . ($re ? 'success' : 'fail'));
     }
     require_once _base_ . '/lib/lib.form.php';
     $form = new Form();
     $out->setWorkingZone('content');
     $out->add('<div class="std_block">');
     $out->add($form->getFormHeader($lang->def('_NEW_FREETEXT')) . $form->openForm('create_' . $this->getFieldType(), $this->getUrl()) . $form->openElementSpace() . $form->getHidden('type_field', 'type_field', $this->getFieldType()) . $form->getHidden('back', 'back', $back_coded));
     $mand_lang = getLanguage();
     foreach ($array_lang as $k => $lang_code) {
         $out->add($form->getTextfield(($mand_lang == $lang_code ? '<span class="mandatory">*</span>' : '') . $lang_code, 'new_freetext_' . $lang_code, 'new_freetext[' . $lang_code . ']', 255, '', $lang_code . ' ' . $lang->def('_FIELD_NAME')));
     }
     $GLOBALS['page']->add($this->getMultiLangCheck(), 'content');
     $GLOBALS['page']->add($this->getShowOnPlatformFieldset(), 'content');
     $out->add($form->closeElementSpace() . $form->openButtonSpace() . $form->getButton('save_field', 'save_field_' . $this->getFieldType(), $std_lang->def('_CREATE', 'standard')) . $form->getButton('undo', 'undo', $std_lang->def('_UNDO', 'standard')) . $form->closeButtonSpace() . $form->closeForm());
     $out->add('</div>');
 }
Example #6
0
<?php

switch ($step) {
    //step 1 : choose file and reading options
    case 1:
        echo getTitleArea(Lang::t('_ORG_CHART_IMPORT_USERS', 'organization_chart'), 'directory_group');
        echo '<div class="std_block">';
        echo Form::getFormHeader(Lang::t('_ASSIGN_USERS', 'admin_directory'));
        echo Form::openForm('directory_importgroupuser', 'index.php?r=' . $this->link . '/importusers', false, false, 'multipart/form-data');
        //echo Form::getHidden('id', 'id', $id_org);
        echo Form::getHidden('step', 'step', 2);
        echo Form::openElementSpace();
        echo Form::getFilefield(Lang::t('_GROUP_USER_IMPORT_FILE', 'admin_directory'), 'file_import', 'file_import');
        //echo Form::getTextfield(Lang::t('_GROUP_USER_IMPORT_SEPARATOR', 'admin_directory'), 'import_separator', 'import_separator', 1, ',');
        echo Form::getRadioSet(Lang::t('_GROUP_USER_IMPORT_SEPARATOR', 'admin_directory'), 'import_separator', 'import_separator', array(Lang::t('_AUTODETECT', 'standard') => 'auto', '<b>,</b>' => 'comma', '<b>;</b>' => 'dotcomma', Lang::t('_MANUAL', 'standard') . ':&nbsp;' . Form::getInputTextfield('', 'import_separator_manual', 'import_separator_manual', "", "", 255) => 'manual'), 'auto');
        echo Form::getCheckbox(Lang::t('_GROUP_USER_IMPORT_HEADER', 'admin_directory'), 'import_first_row_header', 'import_first_row_header', 'true', true);
        echo Form::getTextfield(Lang::t('_GROUP_USER_IMPORT_CHARSET', 'admin_directory'), 'import_charset', 'import_charset', 20, 'UTF-8');
        echo Form::getDropdown(Lang::t('_DIRECTORY_MEMBERTYPETREE', 'admin_directory'), 'id', 'id', $orgchart_list, $id_org);
        echo Form::getRadioSet(Lang::t('_FORCE_PASSWORD_CHANGE', 'admin_directory'), 'pwd_force_change_policy', 'pwd_force_change_policy', array(Lang::t('_NO', 'standard') => 'false', Lang::t('_YES', 'standard') => 'true', Lang::t('_SERVERINFO', 'configuration') => 'by_setting', Lang::t('_DO_NOTHING', 'preassessment') => 'do_nothing'), 'do_nothing');
        echo Form::closeElementSpace();
        echo Form::openButtonSpace();
        echo Form::getButton('import_groupuser_2', 'import_groupuser_2', Lang::t('_NEXT', 'standard'));
        echo Form::getButton('import_groupcancel', 'import_groupcancel', Lang::t('_UNDO', 'standard'));
        echo Form::closeButtonSpace();
        echo Form::closeForm();
        echo '</div>';
        break;
        //step 2 : set columns
    //step 2 : set columns
    case 2:
        echo getTitleArea(Lang::t('_ORG_CHART_IMPORT_USERS', 'organization_chart'), 'directory_group');
Example #7
0
function newCourseEditionForm($course_id)
{
    checkPerm('mod');
    require_once $GLOBALS['where_lms'] . '/lib/lib.course.php';
    require_once _base_ . '/lib/lib.form.php';
    //require_once(_i18n_.'/lib.lang.php');
    require_once _base_ . '/lib/lib.table.php';
    $lang =& DoceboLanguage::CreateInstance('course', 'lms');
    $form = new Form();
    $array_lang = Docebo::langManager()->getAllLangCode();
    $array_lang[] = 'none';
    // possibile course status
    $course_status = array(CST_PREPARATION => $lang->def('_CST_PREPARATION'), CST_AVAILABLE => $lang->def('_CST_AVAILABLE'), CST_EFFECTIVE => $lang->def('_CST_CONFIRMED'), CST_CONCLUDED => $lang->def('_CST_CONCLUDED'), CST_CANCELLED => $lang->def('_CST_CANCELLED'));
    //type of edition
    $edition_type = array('elearning' => $lang->def('_COURSE_TYPE_ELEARNING'), 'blended' => $lang->def('_COURSE_TYPE_BLENDED'), 'classroom' => $lang->def('_CLASSROOM'));
    $query_course = "\r\n\tSELECT \tcode, name, description, lang_code, status, level_show_user, subscribe_method,\r\n\t\tlinkSponsor, mediumTime, permCloseLO, userStatusOp, difficult,\r\n\t\tshow_progress, show_time, show_extra_info, show_rules, date_begin, date_end, hour_begin, hour_end, valid_time,\r\n\t\tmin_num_subscribe, max_num_subscribe, max_sms_budget, selling, prize, advance,\r\n\t\tcourse_type, policy_point, point_to_all, course_edition\r\n\tFROM " . $GLOBALS['prefix_lms'] . "_course\r\n\tWHERE idCourse = '" . $course_id . "'";
    $course = mysql_fetch_assoc(sql_query($query_course));
    $GLOBALS['page']->add(getTitleArea($lang->def('_EDITIONS') . " '" . $course["name"] . "'", 'course_edition') . '<div class="std_block">' . getBackUi('index.php?modname=course&op=course_list', $lang->def('_BACK')) . $form->getFormHeader($lang->def('_EDITIONS') . " '" . $course["name"] . "'") . $form->openForm('course_edition_creation', 'index.php?modname=course&amp;op=add_course_edition', false, false, 'multipart/form-data') . $form->openElementSpace() . $form->getHidden('course_id', 'course_id', $course_id) . $form->getTextfield($lang->def('_CODE'), 'course_edition_code', 'course_edition_code', '50', $course["code"]) . $form->getTextfield($lang->def('_COURSE_NAME'), 'course_edition_name', 'course_edition_name', '255', $course["name"]) . $form->getDropdown($lang->def('_STATUS'), 'course_edition_status', 'course_edition_status', $course_status, $course['status']) . $form->getTextarea($lang->def('_DESCRIPTION'), 'course_edition_descr', 'course_edition_descr', $course['description']) . $form->getDropdown($lang->def('_COURSE_TYPE'), 'edition_type', 'edition_type', $edition_type, $course["course_type"]), 'content');
    $GLOBALS['page']->add($form->getOpenFieldset($lang->def('_COURSE_SUBSCRIPTION')) . $form->getOpenCombo($lang->def('_USER_CAN_SUBSCRIBE')) . $form->getRadio($lang->def('_SUBSCRIPTION_CLOSED'), 'subscription_closed', 'can_subscribe', '0', TRUE) . $form->getRadio($lang->def('_SUBSCRIPTION_OPEN'), 'subscription_open', 'can_subscribe', '1', FALSE) . $form->getRadio($lang->def('_SUBSCRIPTION_IN_PERIOD') . ":", 'subscription_period', 'can_subscribe', '2', FALSE) . $form->getCloseCombo() . $form->getDatefield($lang->def('_SUBSCRIPTION_DATE_BEGIN') . ":", 'sub_start_date', 'sub_start_date', "") . $form->getDatefield($lang->def('_SUBSCRIPTION_DATE_END') . ":", 'sub_end_date', 'sub_end_date', "") . $form->getCloseFieldset(), 'content');
    $GLOBALS['page']->add($form->getOpenFieldset($lang->def('_COURSE_SPECIAL_OPTION')) . $form->getTextfield($lang->def('_COURSE_PRIZE'), 'edition_price', 'edition_price', 11, $course["prize"]) . $form->getTextfield($lang->def('_COURSE_ADVANCE'), 'edition_advance', 'edition_advance', 11, $course['advance']) . $form->getTextfield($lang->def('_MIN_NUM_SUBSCRIBE'), 'min_num_subscribe', 'min_num_subscribe', 11, $course["min_num_subscribe"]) . $form->getTextfield($lang->def('_MAX_NUM_SUBSCRIBE'), 'max_num_subscribe', 'max_num_subscribe', 11, $course["max_num_subscribe"]) . $form->getCheckbox($lang->def('_ALLOW_OVERBOOKING'), 'allow_overbooking', 'allow_overbooking', 1) . $form->getCloseFieldset(), 'content');
    $hours = array('-1' => '- -', '0' => '00', '01', '02', '03', '04', '05', '06', '07', '08', '09', '10', '11', '12', '13', '14', '15', '16', '17', '18', '19', '20', '21', '22', '23');
    $quarter = array('-1' => '- -', '00' => '00', '15' => '15', '30' => '30', '45' => '45');
    if ($course['hour_begin'] != '-1') {
        $hb_sel = (int) substr($course['hour_begin'], 0, 2);
        $qb_sel = substr($course['hour_begin'], 3, 2);
    } else {
        $hb_sel = $qb_sel = '-1';
    }
    if ($course['hour_end'] != '-1') {
        $he_sel = (int) substr($course['hour_end'], 0, 2);
        $qe_sel = substr($course['hour_end'], 3, 2);
    } else {
        $he_sel = $qe_sel = '-1';
    }
    $GLOBALS['page']->add($form->getDatefield($lang->def('_DATE_BEGIN'), 'course_edition_date_begin', 'course_edition_date_begin', Format::date($course["date_begin"])) . $form->getDatefield($lang->def('_DATE_END'), 'course_edition_date_end', 'course_edition_date_end', Format::date($course["date_end"])) . $form->getLineBox('<label for="hour_begin_hour">' . $lang->def('_HOUR_BEGIN') . '</label>', $form->getInputDropdown('dropdown_nw', 'hour_begin_hour', 'hour_begin[hour]', $hours, $hb_sel, '') . ' : ' . $form->getInputDropdown('dropdown_nw', 'hour_begin_quarter', 'hour_begin[quarter]', $quarter, $qe_sel, '')) . $form->getLineBox('<label for="hour_end_hour">' . $lang->def('_HOUR_END') . '</label>', $form->getInputDropdown('dropdown_nw', 'hour_end_hour', 'hour_end[hour]', $hours, $he_sel, '') . ' : ' . $form->getInputDropdown('dropdown_nw', 'hour_end_quarter', 'hour_end[quarter]', $quarter, $qe_sel, '')), 'content');
    $GLOBALS['page']->add($form->getOpenFieldset($lang->def('_DOCUMENT_UPLOAD')) . $form->getFilefield($lang->def('_USER_MATERIAL'), 'course_edition_user_material', 'course_edition_user_material') . $form->getFilefield($lang->def('_OTHER_USER_MATERIAL'), 'course_edition_otheruser_material', 'course_edition_otheruser_material') . $form->getCloseFieldset() . $form->closeElementSpace() . $form->openButtonSpace() . $form->getButton('course_create', 'course_create', $lang->def('_CREATE')) . $form->getButton('course_undo_edition', 'course_undo_edition', $lang->def('_UNDO')) . $form->closeButtonSpace() . $form->closeForm() . '</div>', 'content');
}
Example #8
0
 /**
  * Assign fields for group
  **/
 function loadAssignField($groupid)
 {
     if (isset($_POST[DIRECTORY_ID])) {
         if (isset($_POST[DIRECTORY_ID]['save_assignfield'])) {
             return $this->loadAssignField2($groupid);
         } elseif (isset($_POST[DIRECTORY_ID]['cancel_assignfield'])) {
             Util::jump_to('index.php?modname=directory&op=listgroup');
         }
     }
     $arrGroup = $this->aclManager->getGroup(FALSE, $groupid);
     if ($arrGroup !== FALSE) {
         $idst = $arrGroup[0];
         $description = $arrGroup[2];
     }
     require_once $GLOBALS['where_framework'] . '/lib/lib.field.php';
     require_once _base_ . '/lib/lib.form.php';
     $form = new Form();
     $fl = new FieldList();
     $acl =& Docebo::user()->getACL();
     $GLOBALS['page']->setWorkingZone('content');
     $GLOBALS['page']->add(getTitleArea($this->lang->def('_GROUPS') . ': ' . $groupid, 'directory_group'));
     $GLOBALS['page']->add('<div class="std_block">');
     $GLOBALS['page']->add($form->getFormHeader($this->lang->def('_DIRECTORY_ASSIGNFIELDGROUP')));
     $GLOBALS['page']->add($form->openForm('directoryassignfieldgroup', 'index.php?modname=directory&amp;op=assignfield&amp;groupid=' . $groupid));
     $GLOBALS['page']->add($form->openElementSpace());
     //$GLOBALS['page']->add( $this->printState());
     $GLOBALS['page']->add($form->getHidden(DIRECTORY_ID . '_idst_group', DIRECTORY_ID . '[idst_group]', $idst));
     $arr_all_fields = $fl->getAllFields();
     $arr_fields_normal = $fl->getFieldsFromIdst(array($idst));
     $arr_fields_inherit = $fl->getFieldsFromIdst($acl->getGroupGroupsST($idst));
     $arr_values = array($this->lang->def('_NO') => GROUP_FIELD_NO, $this->lang->def('_GROUP_FIELD_NORMAL') => GROUP_FIELD_NORMAL);
     foreach ($arr_all_fields as $field) {
         $def_value = GROUP_FIELD_NO;
         if (isset($arr_fields_normal[$field[FIELD_INFO_ID]])) {
             $def_value = GROUP_FIELD_NORMAL;
         } elseif (isset($arr_fields_inherit[$field[FIELD_INFO_ID]])) {
             $def_value = GROUP_FIELD_INHERIT;
         }
         $GLOBALS['page']->add($form->openFormLine());
         $GLOBALS['page']->add('<div class="label_effect">' . $field[FIELD_INFO_TRANSLATION] . '</div>');
         if ($def_value == GROUP_FIELD_INHERIT) {
             $GLOBALS['page']->add('<div class="floating">' . $this->lang->def('GROUP_FIELD_INHERIT') . '</div>');
         } else {
             foreach ($arr_values as $label => $value) {
                 $GLOBALS['page']->add('<input class="radio" type="radio"' . ' id="' . DIRECTORY_ID . '_' . $field[FIELD_INFO_ID] . '_' . $value . '"' . ' name="' . DIRECTORY_ID . '[' . DIRECTORY_OP_ADDFIELD . '][' . $field[FIELD_INFO_ID] . ']"' . ' value="' . $value . '"' . ($value == $def_value ? ' checked="checked"' : '') . ' />');
                 $GLOBALS['page']->add($form->getLabel(DIRECTORY_ID . '_' . $field[FIELD_INFO_ID] . '_' . $value, $label, 'label_bold'));
             }
         }
         //$tree .= $form->getLabel( $id, $field[FIELD_INFO_TRANSLATION] );
         $GLOBALS['page']->add($form->closeFormLine());
     }
     $GLOBALS['page']->add($form->closeElementSpace() . $form->openButtonSpace() . $form->getButton('save_assignfield' . DIRECTORY_ID, DIRECTORY_ID . '[save_assignfield]', $this->lang->def('_NEXT')) . $form->getButton('cancel_assignfield' . DIRECTORY_ID, DIRECTORY_ID . '[cancel_assignfield]', $this->lang->def('_UNDO')) . $form->closeButtonSpace());
 }
Example #9
0
 function _add_son()
 {
     $array_lang = array();
     $std_lang =& DoceboLanguage::createInstance('standard');
     $lang =& DoceboLanguage::createInstance('field');
     $array_lang = Docebo::langManager()->getAllLangCode();
     $out =& $GLOBALS['page'];
     if (isset($_POST['undo'])) {
         //undo action
         Util::jump_to($this->getUrl() . '&id_common=' . $this->id_common . '&type_field=' . $this->getFieldType() . '&back=' . $this->back_coded);
     }
     if (isset($_POST['save_field_' . $this->getFieldType()])) {
         //insert mandatory translation
         $mand_lang = getLanguage();
         //control if all is ok
         if (!isset($_POST['new_dropdown_son'][$mand_lang])) {
             $out->add(getErrorUi($lang->def('_ERR_MUST_DEF_MANADATORY_TRANSLATION')) . getBackUi($this->getUrl() . '&amp;id_common=' . $this->id_common . '&amp;type_field=' . $this->getFieldType() . '&amp;back=' . $this->back_coded, $std_lang->def('_BACK')), 'content');
             return;
         }
         if ($_POST['new_dropdown_son'][$mand_lang] == $lang->def('_FIELD_NAME') || trim($_POST['new_dropdown_son'][$mand_lang]) == '') {
             $out->add(getErrorUi($lang->def('_ERR_MUST_DEF_MANADATORY_TRANSLATION')) . getBackUi($this->getUrl() . '&amp;id_common=' . $this->id_common . '&type_field=' . $this->getFieldType() . '&back=' . $this->back_coded, $std_lang->def('_BACK')), 'content');
             return;
         }
         list($sequence) = sql_fetch_row(sql_query("\r\n\t\t\tSELECT COUNT(*)\r\n\t\t\tFROM " . $this->_getElementTable() . "\r\n\t\t\tWHERE idField = '" . $this->id_common . "' AND lang_code = '" . getLanguage() . "'"));
         $sequence++;
         //insert mandatory field
         if (!sql_query("\r\n\t\t\tINSERT INTO " . $this->_getElementTable() . "\r\n\t\t\t(idField, lang_code, translation, sequence) VALUES\r\n\t\t\t('" . $this->id_common . "', '" . $mand_lang . "', '" . $_POST['new_dropdown_son'][$mand_lang] . "', '" . $sequence . "') ")) {
             Util::jump_to($this->getUrl() . '&id_common=' . $this->id_common . '&type_field=' . $this->getFieldType() . '&back=' . $this->back_coded . '&result=fail');
         }
         list($id_common_son) = sql_fetch_row(sql_query("SELECT LAST_INSERT_ID()"));
         if (!sql_query("\r\n\t\t\tUPDATE " . $this->_getElementTable() . "\r\n\t\t\tSET id_common_son = '" . (int) $id_common_son . "'\r\n\t\t\tWHERE idSon = '" . (int) $id_common_son . "'")) {
             Util::jump_to($this->getUrl() . '&id_common=' . $this->id_common . '&type_field=' . $this->getFieldType() . '&back=' . $this->back_coded . '&result=fail');
         }
         $re = true;
         //insert other field
         foreach ($_POST['new_dropdown_son'] as $lang_code => $translation) {
             if ($mand_lang != $lang_code && $translation != $lang->def('_FIELD_NAME') && trim($translation) != '') {
                 $re_ins = sql_query("\r\n\t\t\t\t\tINSERT INTO " . $this->_getElementTable() . "\r\n\t\t\t\t\t(idField, id_common_son, lang_code, translation, sequence) VALUES\r\n\t\t\t\t\t('" . $this->id_common . "', '" . (int) $id_common_son . "', '" . $lang_code . "', '" . $translation . "', '" . $sequence . "') ");
                 $re = $re && $re_ins;
             }
         }
         Util::jump_to($this->getUrl() . '&id_common=' . $this->id_common . '&type_field=' . $this->getFieldType() . '&back=' . $this->back_coded . '&result=' . ($re ? 'success' : 'fail'));
     }
     require_once _base_ . '/lib/lib.form.php';
     $form = new Form();
     $out->setWorkingZone('content');
     $out->add('<div class="std_block">');
     $out->add($form->getFormHeader($lang->def('_DROPDOWN_SON_NEW')) . $form->openForm('create_' . $this->getFieldType(), $this->getUrl()) . $form->openElementSpace() . $form->getHidden('type_field', 'type_field', $this->getFieldType()) . $form->getHidden('id_common', 'id_common', $this->id_common) . $form->getHidden('back', 'back', $this->back_coded) . $form->getHidden('iop', 'iop', 'add'));
     $mand_lang = getLanguage();
     foreach ($array_lang as $k => $lang_code) {
         $out->add($form->getTextfield(($mand_lang == $lang_code ? '<span class="mandatory">*</span>' : '') . $lang_code, 'new_dropdown_son_' . $lang_code, 'new_dropdown_son[' . $lang_code . ']', 255, '', $lang_code . ' ' . $lang->def('_FIELD_NAME')));
     }
     $out->add($form->closeElementSpace() . $form->openButtonSpace() . $form->getButton('save_field', 'save_field_' . $this->getFieldType(), $std_lang->def('_CREATE', 'standard')) . $form->getButton('undo', 'undo', $std_lang->def('_UNDO', 'standard')) . $form->closeButtonSpace() . $form->closeForm());
     $out->add('</div>');
 }
Example #10
0
 function loadImportUsers2()
 {
     require_once _base_ . '/lib/lib.upload.php';
     $tdb =& $this->tdb;
     $folder = $tdb->getFolderById($this->getSelectedFolderId());
     $back_url = 'index.php?modname=directory&op=org_chart';
     // ----------- file upload -----------------------------------------
     if ($_FILES['file_import']['name'] == '') {
         $_SESSION['last_error'] = Lang::t('_FILEUNSPECIFIED');
         Util::jump_to($back_url . '&import_result=-1');
     } else {
         $path = '/appCore/';
         $savefile = mt_rand(0, 100) . '_' . time() . '_' . $_FILES['file_import']['name'];
         if (!file_exists($GLOBALS['where_files_relative'] . $path . $savefile)) {
             sl_open_fileoperations();
             if (!sl_upload($_FILES['file_import']['tmp_name'], $path . $savefile)) {
                 sl_close_fileoperations();
                 $_SESSION['last_error'] = Lang::t('_ERROR_UPLOAD');
                 Util::jump_to($back_url . '&import_result=-1');
             }
             sl_close_fileoperations();
         } else {
             $_SESSION['last_error'] = Lang::t('_ERROR_UPLOAD');
             Util::jump_to($back_url . '&create_result=-1');
         }
     }
     require_once _base_ . '/lib/lib.form.php';
     $form = new Form();
     $tree = $form->getFormHeader($this->lang->def('_ORG_CHART_IMPORT_USERS'));
     $tree .= $form->openElementSpace();
     $tree .= $this->printState();
     require_once dirname(__FILE__) . '/import.org_chart.php';
     $separator = isset($_POST['import_separator']) ? $_POST['import_separator'] : ',';
     $first_row_header = isset($_POST['import_first_row_header']) ? $_POST['import_first_row_header'] == 'true' : FALSE;
     $import_charset = isset($_POST['import_charset']) ? $_POST['import_charset'] : 'UTF-8';
     if (trim($import_charset) === '') {
         $import_charset = 'UTF-8';
     }
     $src = new DeceboImport_SourceCSV(array('filename' => $GLOBALS['where_files_relative'] . $path . $savefile, 'separator' => $separator, 'first_row_header' => $first_row_header, 'import_charset' => $import_charset));
     $dst = new ImportUser(array('dbconn' => $GLOBALS['dbConn'], 'tree' => &$this));
     $src->connect();
     $dst->connect();
     $importer = new DoceboImport();
     $importer->setSource($src);
     $importer->setDestination($dst);
     $tree .= $importer->getUIMap();
     $tree .= $form->getHidden($this->id . '_filename', $this->id . '[filename]', $GLOBALS['where_files_relative'] . $path . $savefile);
     $tree .= $form->getHidden('import_first_row_header', 'import_first_row_header', $first_row_header ? 'true' : 'false');
     $tree .= $form->getHidden('import_separator', 'import_separator', $separator);
     $tree .= $form->getHidden('import_charset', 'import_charset', $import_charset);
     $tree .= $form->closeElementSpace() . $form->openButtonSpace() . $form->getButton('next2_importusers' . $this->id, $this->id . '[next2_importusers]', $this->lang->def('_SAVE')) . $form->getButton($this->_getCancelId(), $this->_getCancelId(), $this->lang->def('_UNDO')) . $form->closeButtonSpace();
     return $tree;
 }
Example #11
0
 /**
  * this function manage a field
  *
  * @param  string	$back	indicates the return url
  * @return nothing
  *
  * @access public
  */
 function edit($back)
 {
     $back_coded = htmlentities(urlencode($back));
     $array_lang = array();
     $std_lang =& DoceboLanguage::createInstance('standard');
     $lang =& DoceboLanguage::createInstance('field');
     $array_lang = Docebo::langManager()->getAllLangCode();
     $out =& $GLOBALS['page'];
     if (isset($_POST['undo'])) {
         //undo action
         Util::jump_to($back . '&result=undo');
     }
     if (isset($_POST['save_field_' . $this->getFieldType()])) {
         //insert mandatory translation
         $mand_lang = getLanguage();
         $show_on = '';
         if (isset($_POST['show_on_platform'])) {
             while (list($code, ) = each($_POST['show_on_platform'])) {
                 $show_on .= $code . ',';
             }
         }
         //control if all is ok
         if (!isset($_POST['new_country'][$mand_lang])) {
             $out->add(getErrorUi($lang->def('_ERR_MUST_DEF_MANADATORY_TRANSLATION')) . getBackUi($this->getUrl() . '&amp;type_field=' . $this->getFieldType() . '&amp;back=' . $back_coded, $std_lang->def('_BACK')), 'content');
             return;
         }
         if ($_POST['new_country'][$mand_lang] == $lang->def('_FIELD_NAME') || trim($_POST['new_country'][$mand_lang]) == '') {
             $out->add(getErrorUi($lang->def('_ERR_MUST_DEF_MANADATORY_TRANSLATION')) . getBackUi($this->getUrl() . '&amp;type_field=' . $this->getFieldType() . '&amp;back=' . $back_coded, $std_lang->def('_BACK')), 'content');
             return;
         }
         $existsing_translation = array();
         $re_trans = sql_query("\r\n\t\t\tSELECT lang_code\r\n\t\t\tFROM " . $this->_getMainTable() . "\r\n\t\t\tWHERE id_common = '" . $this->id_common . "'");
         while (list($l_code) = sql_fetch_row($re_trans)) {
             $existsing_translation[$l_code] = 1;
         }
         $use_multilang = isset($_POST['use_multi_lang']) ? 1 : 0;
         $re = true;
         //insert other field
         foreach ($_POST['new_country'] as $lang_code => $translation) {
             if (isset($existsing_translation[$lang_code])) {
                 if (!sql_query("\r\n\t\t\t\t\tUPDATE " . $this->_getMainTable() . "\r\n\t\t\t\t\tSET translation = '" . $translation . "',\r\n\t\t\t\t\t\tshow_on_platform = '" . $show_on . "',\r\n\t\t\t\t\t\tuse_multilang = '" . $use_multilang . "'\r\n\t\t\t\t\tWHERE id_common = '" . (int) $this->id_common . "' AND lang_code = '" . $lang_code . "'")) {
                     $re = false;
                 }
             } else {
                 if (!sql_query("\r\n\t\t\t\t\tINSERT INTO " . $this->_getMainTable() . "\r\n\t\t\t\t\t(type_field, id_common, lang_code, translation, show_on_platform, use_multilang) VALUES\r\n\t\t\t\t\t('" . $this->getFieldType() . "', '" . (int) $this->id_common . "', '" . $lang_code . "', '" . $translation . "', '" . $show_on . "', '" . $use_multilang . "') ")) {
                     $re = false;
                 }
             }
         }
         Util::jump_to($back . '&result=' . ($re ? 'success' : 'fail'));
     }
     //load value form database
     $re_trans = sql_query("\r\n\t\tSELECT lang_code, translation, show_on_platform, use_multilang\r\n\t\tFROM " . $this->_getMainTable() . "\r\n\t\tWHERE id_common = '" . $this->id_common . "'");
     while (list($l_code, $trans, $show_on, $db_use_multilang) = sql_fetch_row($re_trans)) {
         $translation[$l_code] = $trans;
         if (!isset($show_on_platform)) {
             $show_on_platform = array_flip(explode(',', $show_on));
         }
         if (!isset($use_multilang)) {
             $use_multilang = $db_use_multilang;
         }
     }
     require_once _base_ . '/lib/lib.form.php';
     $form = new Form();
     $out->setWorkingZone('content');
     $out->add('<div class="std_block">');
     $out->add($form->getFormHeader($lang->def('_MODIFY_COUNTRY')) . $form->openForm('create_' . $this->getFieldType(), $this->getUrl()) . $form->openElementSpace() . $form->getHidden('type_field', 'type_field', $this->getFieldType()) . $form->getHidden('id_common', 'id_common', $this->id_common) . $form->getHidden('back', 'back', $back_coded));
     $mand_lang = getLanguage();
     foreach ($array_lang as $k => $lang_code) {
         $out->add($form->getTextfield(($mand_lang == $lang_code ? '<span class="mandatory">*</span>' : '') . $lang_code, 'new_country_' . $lang_code, 'new_country[' . $lang_code . ']', 255, isset($translation[$lang_code]) ? $translation[$lang_code] : '', $lang_code . ' ' . $lang->def('_FIELD_NAME')));
     }
     $GLOBALS['page']->add($this->getMultiLangCheck($use_multilang), 'content');
     $GLOBALS['page']->add($this->getShowOnPlatformFieldset($show_on_platform), 'content');
     $out->add($form->closeElementSpace() . $form->openButtonSpace() . $form->getButton('save_field', 'save_field_' . $this->getFieldType(), $std_lang->def('_SAVE', 'standard')) . $form->getButton('undo', 'undo', $std_lang->def('_UNDO', 'standard')) . $form->closeButtonSpace() . $form->closeForm());
     $out->add('</div>');
 }