diff --git a/main/admin/index.php b/main/admin/index.php index d253267552..b33bdbf5f7 100644 --- a/main/admin/index.php +++ b/main/admin/index.php @@ -293,6 +293,7 @@ if (api_is_platform_admin()) { //$items[] = array('url'=>'skills_profile.php', 'label' => get_lang('SkillsProfile')); $items[] = array('url'=>api_get_path(WEB_CODE_PATH).'social/skills_ranking.php', 'label' => get_lang('SkillsRanking')); $items[] = array('url'=>'skills_gradebook.php', 'label' => get_lang('SkillsAndGradebooks')); + $items[] = array('url'=> api_get_path(WEB_CODE_PATH) . 'admin/openbadges/index.php', 'label' => get_lang('OpenBadges')); $blocks['skills']['items'] = $items; $blocks['skills']['extra'] = null; $blocks['skills']['search_form'] = null; diff --git a/main/admin/openbadges/create.php b/main/admin/openbadges/create.php new file mode 100644 index 0000000000..7675c4d103 --- /dev/null +++ b/main/admin/openbadges/create.php @@ -0,0 +1,68 @@ + + * @package chamilo.admin.openbadges + */ +$cidReset = true; + +require_once '../../inc/global.inc.php'; +require_once '../../inc/lib/fileUpload.lib.php'; + +$this_section = SECTION_PLATFORM_ADMIN; + +$skillId = intval($_GET['id']); + +$objSkill = new Skill(); +$skill = $objSkill->get($skillId); + +if ($_SERVER['REQUEST_METHOD'] === 'POST') { + if ($_FILES['image']['error'] == 0) { + $dirPermissions = api_get_permissions_for_new_directories(); + $sysCodePath = api_get_path(SYS_CODE_PATH); + + $fileDir = "upload/data/badges/"; + $fileName = sha1($_POST['name']) . ".png"; + + if (!file_exists($sysCodePath . $fileDir)) { + mkdir($sysCodePath . $fileDir, $dirPermissions, true); + } + + if ($_FILES['image']['error'] == 0) { + unlink($sysCodePath . $skill['info']); + + $imageExtraField = new Image($_FILES['image']['tmp_name']); + $imageExtraField->send_image($sysCodePath . $fileDir . $fileName, -1, 'png'); + } + } + + $params = array( + 'name' => $_POST['name'], + 'description' => $_POST['description'], + 'icon' => $fileDir . $fileName, + 'criteria' => $_POST['criteria'], + 'id' => $skillId + ); + + $objSkill->update($params); +} + +$interbreadcrumb = array( + array( + 'url' => api_get_path(WEB_CODE_PATH) . 'admin/index.php', + 'name' => get_lang('Administration') + ), + array( + 'url' => api_get_path(WEB_CODE_PATH) . 'admin/openbadges/index.php', + 'name' => get_lang('OpenBadges') + ) +); + +$tpl = new Template('CreateOpenBadge'); +$tpl->assign('platformAdminEmail', get_setting('emailAdministrator')); +$tpl->assign('skill', $skill); + +$contentTemplate = $tpl->get_template('openbadges/create.tpl'); + +$tpl->display($contentTemplate); diff --git a/main/admin/openbadges/index.php b/main/admin/openbadges/index.php new file mode 100644 index 0000000000..3e6dcef50d --- /dev/null +++ b/main/admin/openbadges/index.php @@ -0,0 +1,25 @@ + + * @package chamilo.admin.openbadges + */ +$cidReset = true; + +require_once '../../inc/global.inc.php'; + +$this_section = SECTION_PLATFORM_ADMIN; + +$interbreadcrumb = array( + array( + 'url' => api_get_path(WEB_CODE_PATH) . 'admin/index.php', + 'name' => get_lang('Administration') + ) +); + +$tpl = new Template('OpenBadges'); + +$contentTemplate = $tpl->get_template('openbadges/index.tpl'); + +$tpl->display($contentTemplate); diff --git a/main/admin/openbadges/issuer.php b/main/admin/openbadges/issuer.php new file mode 100644 index 0000000000..1c2beda64e --- /dev/null +++ b/main/admin/openbadges/issuer.php @@ -0,0 +1,29 @@ + + * @package chamilo.admin.openbadges + */ +$cidReset = true; + +require_once '../../inc/global.inc.php'; + +$this_section = SECTION_PLATFORM_ADMIN; + +$interbreadcrumb = array( + array( + 'url' => api_get_path(WEB_CODE_PATH) . 'admin/index.php', + 'name' => get_lang('Administration') + ), + array( + 'url' => api_get_path(WEB_CODE_PATH) . 'admin/openbadges/index.php', + 'name' => get_lang('OpenBadges') + ) +); + +$tpl = new Template('OpenBadges'); + +$contentTemplate = $tpl->get_template('openbadges/issuer.tpl'); + +$tpl->display($contentTemplate); diff --git a/main/inc/lib/skill.lib.php b/main/inc/lib/skill.lib.php index bf0cf48ae8..2c6e9137a7 100755 --- a/main/inc/lib/skill.lib.php +++ b/main/inc/lib/skill.lib.php @@ -376,7 +376,7 @@ class SkillRelUser extends Model class Skill extends Model { - public $columns = array('id', 'name', 'description', 'access_url_id', 'short_code'); + public $columns = array('id', 'name', 'description', 'access_url_id', 'short_code', 'icon', 'criteria'); public $required = array('name'); /** Array of colours by depth, for the coffee wheel. Each depth has 4 col */ diff --git a/main/template/default/openbadges/create.tpl b/main/template/default/openbadges/create.tpl new file mode 100644 index 0000000000..8d29eb3cfd --- /dev/null +++ b/main/template/default/openbadges/create.tpl @@ -0,0 +1,109 @@ +{% extends "default/layout/main.tpl" %} + +{% block body %} + +
Design a new badge. Download from the design tool. And Upload in your platform.
++ +
+A new online standard to recognize and verify learning
+ +