api_get_self().'?'.api_get_cidreq(), 'name' => get_lang('CustomizeIcons')); $toolName = $tool['name']; $currentUrl = api_get_self().'?action=edit_icon&id=' . $id.'&'.api_get_cidreq(); $form = new FormValidator('icon_edit', 'post', $currentUrl); $form->addElement('header', get_lang('EditIcon')); $form->addHtml('
'); $form->addElement('text', 'name', get_lang('Name')); $form->addElement('text', 'link', get_lang('Links')); $allowed_picture_types = array ('jpg', 'jpeg', 'png'); $form->addElement('file', 'icon', get_lang('CustomIcon')); $form->addRule('icon', get_lang('OnlyImagesAllowed').' ('.implode(',', $allowed_picture_types).')', 'filetype', $allowed_picture_types); $form->addElement('select', 'target', get_lang('Target'), array('_self' => '_self', '_blank' => '_blank')); $form->addElement('select', 'visibility', get_lang('Visibility'), array(1 => get_lang('Visible'), 0 => get_lang('Invisible'))); $form->addElement('textarea', 'description', get_lang('Description'),array ('rows' => '3', 'cols' => '40')); $form->addButtonUpdate(get_lang('Update')); $form->addHtml('
'); $form->addHtml('
'); if (isset($tool['custom_icon']) && !empty($tool['custom_icon'])) { $form->addLabel( get_lang('Icon'), Display::img( CourseHome::getCustomWebIconPath().$tool['custom_icon'] ) ); $form->addCheckBox('delete_icon', null, get_lang('DeletePicture')); } $form->addHtml('
'); $form->setDefaults($tool); $content = $form->returnForm(); if ($form->validate()) { $data = $form->getSubmitValues(); CourseHome::updateTool($id, $data); Display::addFlash(Display::return_message(get_lang('Updated'))); if (isset($data['delete_icon'])) { CourseHome::deleteIcon($id); } $currentUrlReturn = api_get_self().'?'.api_get_cidreq(); header('Location: '.$currentUrlReturn); exit; } break; case 'list': default: $toolList = CourseHome::toolsIconsAction( api_get_course_int_id(), api_get_session_id() ); $iconsTools = '
'; $iconsTools .= Display::page_header( get_lang('CustomizeIcons'),null,'h4'); $iconsTools .= '
'; foreach ($toolList as $tool) { if ($tool['id']>20) { $toolName = $tool['name']; } else { $toolName = get_lang('Tool'.api_underscore_to_camel_case($tool['name'])); } $iconsTools .= '
'; $iconsTools .= '
'; if (!empty($tool['custom_icon'])) { $image = getCustomWebIconPath().$tool['custom_icon']; $icon = Display::img($image, $toolName); } else { $image = (substr($tool['image'], 0, strpos($tool['image'], '.'))).'.png'; $icon = Display::return_icon( $image, $toolName, array('id' => 'tool_'.$tool['id']), ICON_SIZE_BIG, false ); } $delete = (!empty($tool['custom_icon'])) ? " " : ""; $edit = ''; $iconsTools .= '
'. $icon . '
'; $iconsTools .= '
' . $toolName . '
'; $iconsTools .= '
' . $edit . $delete . '
'; $iconsTools .= '
'; $iconsTools .= '
'; } $iconsTools .= '
'; $iconsTools .= '
'; $content = $iconsTools; break; } /** * @return string */ function getCustomWebIconPath() { // Check if directory exists or create it if it doesn't $dir = api_get_path(WEB_COURSE_PATH).api_get_course_path().'/upload/course_home_icons/'; return $dir; } $tpl = new Template($toolName); $tpl->assign('content', $content); $template = $tpl->get_template('layout/layout_1_col.tpl'); $tpl->display($template);