parent
							
								
									3f3dc24b02
								
							
						
					
					
						commit
						eb859c335d
					
				@ -0,0 +1,113 @@ | 
				
			|||||||
 | 
					<?php | 
				
			||||||
 | 
					/* For licensing terms, see /license.txt */ | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * @author Julio Montoya <gugli100@gmail.com> Adding formvalidator support | 
				
			||||||
 | 
					 * | 
				
			||||||
 | 
					 * @package chamilo.learnpath | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					$this_section = SECTION_COURSES; | 
				
			||||||
 | 
					api_protect_course_script(); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					require 'learnpath_functions.inc.php'; | 
				
			||||||
 | 
					require 'resourcelinker.inc.php'; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					$language_file = 'learnpath'; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/* Header and action code */ | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					$currentstyle = api_get_setting('stylesheets'); | 
				
			||||||
 | 
					$htmlHeadXtra[] = '<script> | 
				
			||||||
 | 
					function setFocus(){ | 
				
			||||||
 | 
					    $("#learnpath_title").focus(); | 
				
			||||||
 | 
					} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					$(document).ready(function () { | 
				
			||||||
 | 
					    setFocus(); | 
				
			||||||
 | 
					}); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					function activate_start_date() { | 
				
			||||||
 | 
						if(document.getElementById(\'start_date_div\').style.display == \'none\') { | 
				
			||||||
 | 
							document.getElementById(\'start_date_div\').style.display = \'block\'; | 
				
			||||||
 | 
						} else { | 
				
			||||||
 | 
							document.getElementById(\'start_date_div\').style.display = \'none\'; | 
				
			||||||
 | 
						} | 
				
			||||||
 | 
					} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					function activate_end_date() { | 
				
			||||||
 | 
					    if(document.getElementById(\'end_date_div\').style.display == \'none\') { | 
				
			||||||
 | 
					        document.getElementById(\'end_date_div\').style.display = \'block\'; | 
				
			||||||
 | 
					    } else { | 
				
			||||||
 | 
					        document.getElementById(\'end_date_div\').style.display = \'none\'; | 
				
			||||||
 | 
					    } | 
				
			||||||
 | 
					} | 
				
			||||||
 | 
					</script>'; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/* Constants and variables */ | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					$is_allowed_to_edit = api_is_allowed_to_edit(null, true); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					$isStudentView  = isset($_REQUEST['isStudentView']) ? $_REQUEST['isStudentView'] : null; | 
				
			||||||
 | 
					$learnpath_id   = isset($_REQUEST['lp_id']) ? $_REQUEST['lp_id'] : null; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/* MAIN CODE */ | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					if ((!$is_allowed_to_edit) || ($isStudentView)) { | 
				
			||||||
 | 
					    //error_log('New LP - User not authorized in lp_add.php'); | 
				
			||||||
 | 
					    header('location:lp_controller.php?action=view&lp_id='.$learnpath_id); | 
				
			||||||
 | 
					    exit; | 
				
			||||||
 | 
					} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					$interbreadcrumb[] = array('url' => 'lp_controller.php?action=list', 'name' => get_lang('LearningPaths')); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					$form = new FormValidator('lp_add_category', 'post', 'lp_controller.php'); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					// Form title | 
				
			||||||
 | 
					$form->addElement('header', null, get_lang('AddLPCategory')); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					// Title | 
				
			||||||
 | 
					$form->addElement('text', 'name', api_ucfirst(get_lang('Name')), array('class' => 'span6')); | 
				
			||||||
 | 
					$form->addRule('name', get_lang('ThisFieldIsRequired'), 'required'); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					$form->addElement('hidden', 'action', 'add_lp_category'); | 
				
			||||||
 | 
					$form->addElement('hidden', 'c_id', api_get_course_int_id()); | 
				
			||||||
 | 
					$form->addElement('hidden', 'id', 0); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					$form->addElement('style_submit_button', 'Submit', get_lang('Save'),'class="save"'); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					if ($form->validate()) { | 
				
			||||||
 | 
					    $values = $form->getSubmitValues(); | 
				
			||||||
 | 
					    if (!empty($values['id'])) { | 
				
			||||||
 | 
					        learnpath::updateCategory($values); | 
				
			||||||
 | 
					        $url = api_get_self().'?action=list&'.api_get_cidreq(); | 
				
			||||||
 | 
					        header('Location: '.$url); | 
				
			||||||
 | 
					        exit; | 
				
			||||||
 | 
					    } else { | 
				
			||||||
 | 
					        learnpath::createCategory($values); | 
				
			||||||
 | 
					        $url = api_get_self().'?action=list&'.api_get_cidreq(); | 
				
			||||||
 | 
					        header('Location: '.$url); | 
				
			||||||
 | 
					        exit; | 
				
			||||||
 | 
					    } | 
				
			||||||
 | 
					} else { | 
				
			||||||
 | 
					    $id = isset($_REQUEST['id']) ? $_REQUEST['id'] : null; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    if ($id) { | 
				
			||||||
 | 
					        $item = learnpath::getCategory($id); | 
				
			||||||
 | 
					        $defaults = array( | 
				
			||||||
 | 
					            'id' => $item->getId(), | 
				
			||||||
 | 
					            'name' => $item->getName() | 
				
			||||||
 | 
					        ); | 
				
			||||||
 | 
					        $form->setDefaults($defaults); | 
				
			||||||
 | 
					    } | 
				
			||||||
 | 
					} | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Display::display_header(get_lang('LearnpathAddLearnpath'), 'Path'); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					echo '<div class="actions">'; | 
				
			||||||
 | 
					echo '<a href="lp_controller.php?'.api_get_cidreq().'">'. | 
				
			||||||
 | 
					    Display::return_icon('back.png', get_lang('ReturnToLearningPaths'),'',ICON_SIZE_MEDIUM).'</a>'; | 
				
			||||||
 | 
					echo '</div>'; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					$form->display(); | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Display::display_footer(); | 
				
			||||||
									
										
											File diff suppressed because it is too large
											Load Diff
										
									
								
							
						@ -0,0 +1,30 @@ | 
				
			|||||||
 | 
					<?php | 
				
			||||||
 | 
					/* For licensing terms, see /license.txt */ | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					namespace Chamilo\CoreBundle\Migrations\Schema\V110; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					use Doctrine\DBAL\Schema\Schema; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * Auto-generated Migration: Please modify to your needs! | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					class Version20150527114220 extends AbstractMigrationChamilo | 
				
			||||||
 | 
					{ | 
				
			||||||
 | 
					    /** | 
				
			||||||
 | 
					     * @param Schema $schema | 
				
			||||||
 | 
					     */ | 
				
			||||||
 | 
					    public function up(Schema $schema) | 
				
			||||||
 | 
					    { | 
				
			||||||
 | 
					        $this->addSql('CREATE TABLE c_lp_category (iid INT AUTO_INCREMENT NOT NULL, c_id INT NOT NULL, name VARCHAR(255) NOT NULL, position INT NOT NULL, PRIMARY KEY(iid)) DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci ENGINE = InnoDB'); | 
				
			||||||
 | 
					        $this->addSql('ALTER TABLE c_lp ADD category_id INT NOT NULL DEFAULT 0'); | 
				
			||||||
 | 
					    } | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    /** | 
				
			||||||
 | 
					     * @param Schema $schema | 
				
			||||||
 | 
					     */ | 
				
			||||||
 | 
					    public function down(Schema $schema) | 
				
			||||||
 | 
					    { | 
				
			||||||
 | 
					        $this->addSql('DROP TABLE c_lp_category'); | 
				
			||||||
 | 
					        $this->addSql('ALTER TABLE c_lp DROP category_id'); | 
				
			||||||
 | 
					    } | 
				
			||||||
 | 
					} | 
				
			||||||
@ -0,0 +1,123 @@ | 
				
			|||||||
 | 
					<?php | 
				
			||||||
 | 
					/* For licensing terms, see /license.txt */ | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					namespace Chamilo\CourseBundle\Entity; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					use Doctrine\ORM\Mapping as ORM; | 
				
			||||||
 | 
					use Gedmo\Mapping\Annotation as Gedmo; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/** | 
				
			||||||
 | 
					 * CLpCategory | 
				
			||||||
 | 
					 * | 
				
			||||||
 | 
					 * @ORM\Table(name="c_lp_category") | 
				
			||||||
 | 
					 * @ORM\Entity(repositoryClass="Gedmo\Sortable\Entity\Repository\SortableRepository") | 
				
			||||||
 | 
					 */ | 
				
			||||||
 | 
					class CLpCategory | 
				
			||||||
 | 
					{ | 
				
			||||||
 | 
					  /** | 
				
			||||||
 | 
					     * @var integer | 
				
			||||||
 | 
					     * | 
				
			||||||
 | 
					     * @ORM\Column(name="iid", type="integer") | 
				
			||||||
 | 
					     * @ORM\Id | 
				
			||||||
 | 
					     * @ORM\GeneratedValue(strategy="AUTO") | 
				
			||||||
 | 
					     */ | 
				
			||||||
 | 
					    private $iid; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    /** | 
				
			||||||
 | 
					     * @Gedmo\SortableGroup | 
				
			||||||
 | 
					     * @ORM\Column(name="c_id", type="integer") | 
				
			||||||
 | 
					     */ | 
				
			||||||
 | 
					    private $cId; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    /** | 
				
			||||||
 | 
					     * @var string | 
				
			||||||
 | 
					     * | 
				
			||||||
 | 
					     * @ORM\Column(name="name") | 
				
			||||||
 | 
					     */ | 
				
			||||||
 | 
					    private $name; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    /** | 
				
			||||||
 | 
					     * @Gedmo\SortablePosition | 
				
			||||||
 | 
					     * @ORM\Column(name="position", type="integer") | 
				
			||||||
 | 
					     */ | 
				
			||||||
 | 
					    private $position; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    /** | 
				
			||||||
 | 
					     * Set cId | 
				
			||||||
 | 
					     * | 
				
			||||||
 | 
					     * @param integer $cId | 
				
			||||||
 | 
					     * @return CLpCategory | 
				
			||||||
 | 
					     */ | 
				
			||||||
 | 
					    public function setCId($cId) | 
				
			||||||
 | 
					    { | 
				
			||||||
 | 
					        $this->cId = $cId; | 
				
			||||||
 | 
					        return $this; | 
				
			||||||
 | 
					    } | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    /** | 
				
			||||||
 | 
					     * Get cId | 
				
			||||||
 | 
					     * | 
				
			||||||
 | 
					     * @return integer | 
				
			||||||
 | 
					     */ | 
				
			||||||
 | 
					    public function getCId() | 
				
			||||||
 | 
					    { | 
				
			||||||
 | 
					        return $this->cId; | 
				
			||||||
 | 
					    } | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    /** | 
				
			||||||
 | 
					     * Set id | 
				
			||||||
 | 
					     * | 
				
			||||||
 | 
					     * @param integer $id | 
				
			||||||
 | 
					     * @return CLpCategory | 
				
			||||||
 | 
					     */ | 
				
			||||||
 | 
					    public function setId($id) | 
				
			||||||
 | 
					    { | 
				
			||||||
 | 
					        $this->iid = $id; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        return $this; | 
				
			||||||
 | 
					    } | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    /** | 
				
			||||||
 | 
					     * Get blogId | 
				
			||||||
 | 
					     * | 
				
			||||||
 | 
					     * @return integer | 
				
			||||||
 | 
					     */ | 
				
			||||||
 | 
					    public function getId() | 
				
			||||||
 | 
					    { | 
				
			||||||
 | 
					        return $this->iid; | 
				
			||||||
 | 
					    } | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    /** | 
				
			||||||
 | 
					     * Set category name | 
				
			||||||
 | 
					     * | 
				
			||||||
 | 
					     * @param string $blogName | 
				
			||||||
 | 
					     * | 
				
			||||||
 | 
					     * @return CLpCategory | 
				
			||||||
 | 
					     */ | 
				
			||||||
 | 
					    public function setName($name) | 
				
			||||||
 | 
					    { | 
				
			||||||
 | 
					        $this->name = $name; | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        return $this; | 
				
			||||||
 | 
					    } | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    /** | 
				
			||||||
 | 
					     * Get category name | 
				
			||||||
 | 
					     * | 
				
			||||||
 | 
					     * @return string | 
				
			||||||
 | 
					     */ | 
				
			||||||
 | 
					    public function getName() | 
				
			||||||
 | 
					    { | 
				
			||||||
 | 
					        return $this->name; | 
				
			||||||
 | 
					    } | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    public function setPosition($position) | 
				
			||||||
 | 
					    { | 
				
			||||||
 | 
					        $this->position = $position; | 
				
			||||||
 | 
					    } | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    public function getPosition() | 
				
			||||||
 | 
					    { | 
				
			||||||
 | 
					        return $this->position; | 
				
			||||||
 | 
					    } | 
				
			||||||
 | 
					} | 
				
			||||||
					Loading…
					
					
				
		Reference in new issue