Project

General

Profile

Feature #2099

Add course validation/approval functionality

Added by Ivan Tcholakov almost 9 years ago. Updated over 8 years ago.

Status:
Feature implemented
Priority:
Normal
Category:
-
Target version:
Start date:
01/10/2010
Due date:
% Done:

100%

Estimated time:
Complexity:
Normal
SCRUM pts - complexity:
?

Description

I have received prototype code for a new feature "Course Validation". The original authors are:

José Manuel Abuin Mosquera <chema at cesga.es>, Centro de Supercomputacion de Galicia
Bruno Rubio Gayo <brubio at cesga.es>

The original source is attached to this message.

This is how I get the idea at the moment: When the proposed feature is activated, a teacher is not able to create a course alone. He/she fills a course request. A platform administrator (or a HR manager with rights as a platform administrator) reviews the request and approves the request and after that the requested course is really created. Also, the platform administrator can reject course requests.

I am going to make technical adaptation of this code and to insert it in the mainstream Chamilo 1.8.8.


Files

chamilo_validation.zip (41.7 KB) chamilo_validation.zip Ivan Tcholakov, 01/10/2010 16:41
editar_curso_missing.png (73.9 KB) editar_curso_missing.png Ivan Tcholakov, 03/10/2010 02:15

Related issues

Related to Chamilo LMS - Feature #539: Example material creation - logic improvementFeature implemented19/01/2010

Actions

History

#1

Updated by Ivan Tcholakov almost 9 years ago

12625:f80050b4bc5b Feature #2099 - Preparing some files for changes. The leading tabs in the files have been converted to 4 spaces according to the coding conventions.
http://code.google.com/p/chamilo/source/detail?r=f80050b4bc5bcf35a65b6538345297d1b8f891e4&repo=classic

#2

Updated by Ivan Tcholakov almost 9 years ago

Two things (non-critical for the task) are missing form the original authors:

1. The schema of the table 'temporal'. For testing purposes I use the following one:

CREATE TABLE  chamilo_main.temporal (
  id_curso_temp int NOT NULL AUTO_INCREMENT,
  code varchar(40) NOT NULL,
  user_id int unsigned NOT NULL default '0',
  directory varchar(40) DEFAULT NULL,
  db_name varchar(40) DEFAULT NULL,
  course_language varchar(20) DEFAULT NULL,
  title varchar(250) DEFAULT NULL,
  descripcion text,
  category_code varchar(40) DEFAULT NULL,
  tutor_name varchar(200) DEFAULT NULL,
  visual_code varchar(40) DEFAULT NULL,
  fecha_peticion datetime DEFAULT NULL,
  objetivos text,
  destinatarios text,
  estado int unsigned NOT NULL default '0',
  info int unsigned NOT NULL default '0',
  PRIMARY KEY (id_curso_temp),
  UNIQUE KEY code (code)
);

2. A file is missing. It is chamilo/main/admin/editar_curso.php. See the attached image.

#3

Updated by Ivan Tcholakov almost 9 years ago

I need to create some new language variables. I have a question about an English language term. What is to be preferable for Chamilo, training or course?

#5

Updated by Ivan Tcholakov almost 9 years ago

12640:769eeab094de Feature #2099 - CourseManager class, a new method course_code_exists() has been added.
http://code.google.com/p/chamilo/source/detail?r=769eeab094de80f94cc5245cec9d5b2ddd85f941&repo=classic

12639:bab2dd67db4d Feature #2099 - CourseManager class, a method has been renamed: is_existing_course_code() ---> course_code_exists(). A deprecated method with the old name still stays.
http://code.google.com/p/chamilo/source/detail?r=bab2dd67db4db7f8f39192473ceac8d6f26586b2&repo=classic

12638:e4a801e0c61e Feature #2099 - A new library file "course_request.lib.php" has been added.
http://code.google.com/p/chamilo/source/detail?r=e4a801e0c61e89f72269e80b65c5c6ccbb696952&repo=classic

12637:22df6173444e Feature #2099 - A new constant has been added to database.lib.php.
http://code.google.com/p/chamilo/source/detail?r=22df6173444e33b27e9834e10a3abd3390bab816&repo=classic

12636:1345133f682d Feature #2099 - CourseManager class: Preparing the file for changes - tabs are converted automatically to 4 spaces.
http://code.google.com/p/chamilo/source/detail?r=1345133f682d151b1394b14d1ddad3ee4c0c4012&repo=classic

#6

Updated by Ivan Tcholakov almost 9 years ago

12641:e7b65db36c09 Feature #2099 - The new table "course_request" and the new setting "course_validation" have been implemented in the installation script and in the upgrade script.
http://code.google.com/p/chamilo/source/detail?r=e7b65db36c09ac1cb891c42dfbfebfa7db8d45c9&repo=classic

#7

Updated by Ivan Tcholakov almost 9 years ago

12656:2f8f59f837f6 Feature #2099 - The file create_course/add_course.php has been modified for supporting the "Course validation" feature.
http://code.google.com/p/chamilo/source/detail?r=2f8f59f837f6e40aaba01792aa8f7f0efe4399d8&repo=classic

12655:0f75d2d02b29 Feature #2099 - CourseRequestManager class: Two new mathods have been added: create_course_request() and get_course_request_info().
http://code.google.com/p/chamilo/source/detail?r=0f75d2d02b29158a11d481c725256900df23cc23&repo=classic

#9

Updated by Ivan Tcholakov almost 9 years ago

12661:05b16ebf1116 Feature #2099 - Reverting a premature change of the file admin/index.php.
http://code.google.com/p/chamilo/source/detail?r=05b16ebf1116037b9e782355d51d3b23563d766f&repo=classic

12660:d26ac4c5bb6b Feature #2099 - Language related changes (2).
http://code.google.com/p/chamilo/source/detail?r=d26ac4c5bb6be02c6c501b722d4b3afc96906993&repo=classic

#10

Updated by Ivan Tcholakov almost 9 years ago

12675:324a50365a2a Feature #2099 - Additional source files have been added.
http://code.google.com/p/chamilo/source/detail?r=324a50365a2ae787520aef28da5d0234b1a69a74&repo=classic

12674:e958d60c3928 Feature #2099 - CourseRequestManager::accept_course_request() method has been added.
http://code.google.com/p/chamilo/source/detail?r=e958d60c39287fd05956ce07f0aaafd9bb27810f&repo=classic

#11

Updated by Ivan Tcholakov almost 9 years ago

12684:2fed7e096497 Feature #2099 - Language related changes (3).
http://code.google.com/p/chamilo/source/detail?r=2fed7e096497ad401f054802783771a1fa2e03aa&repo=classic

12681:f34b9856af2d Feature #2099 - CourseRequestManager::reject_course_request() method has been added. Other changes/corrections has been done too.
http://code.google.com/p/chamilo/source/detail?r=e958d60c39287fd05956ce07f0aaafd9bb27810f&repo=classic

#12

Updated by Ivan Tcholakov almost 9 years ago

12695:280905bc98b2 Feature #2099 - Language related changes (4).
http://code.google.com/p/chamilo/source/detail?r=280905bc98b2c0e84cd2a0ff12c273d4906ba36e&repo=classic

12694:e5ad701cd748 Feature #2099 - New methods have been added to CourseRequestManager class.
http://code.google.com/p/chamilo/source/detail?r=e5ad701cd748f52088f43dc59bd327ce0c936cf2&repo=classic

#16

Updated by Ivan Tcholakov almost 9 years ago

12721:acce21bb0b7f Feature #2099 - UI: Code for showing confirmation or error messages has been added.
http://code.google.com/p/chamilo/source/detail?r=acce21bb0b7f4ab66ced3e49bc48474002fb8115&repo=classic

#18

Updated by Ivan Tcholakov almost 9 years ago

12725:294014f575e1 Feature #2099 - Admin/course list: Replacing the icon "Add course" with the icon "Review course requests" when the course validation feature is activated.
http://code.google.com/p/chamilo/source/detail?r=294014f575e1cc8505175d29dc8aab743be84642&repo=classic

12724:cac6d087df90 Feature #2099 - Cleaning a file.
http://code.google.com/p/chamilo/source/detail?r=cac6d087df90b8aeb07782dcbe5c37b935ce3887&repo=classic

12723:fec69f3b4245 Feature #2099 - Confirmation and error messages have been added.
http://code.google.com/p/chamilo/source/detail?r=fec69f3b4245553a502b3a5a09259e4b7f8ed72d&repo=classic

#20

Updated by Ivan Tcholakov almost 9 years ago

12730:da9f34b45bbb Feature #2099 - The action "Delete" in some pages has been revised.
http://code.google.com/p/chamilo/source/detail?r=da9f34b45bbb4acaf4eb00e0c3a24e57f3d9b521&repo=classic

#23

Updated by Ivan Tcholakov almost 9 years ago

12740:7f20b8638f0d Feature #2099 - A minor correction.
http://code.google.com/p/chamilo/source/detail?r=7f20b8638f0daba913edab39998554426891c085&repo=classic

12739:a8b13c000558 Feature #2099 - Implementing e-mail notification when a new course (training) request is created.
http://code.google.com/p/chamilo/source/detail?r=a8b13c0005582391fdf5f19e352d46e6ef902de9&repo=classic

12738:8c77fc980dd0 Feature #2099 - A correction about using the function api_get_person_name. It seems to me that the edited file is obsolete.
http://code.google.com/p/chamilo/source/detail?r=8c77fc980dd060d2c9e2534e775a4ae9156ae3f7&repo=classic

12737:122ae5678e09 Feature #2099 - Shallow cleaning for a file, a correction is to be made.
http://code.google.com/p/chamilo/source/detail?r=122ae5678e09e1066cfbf8d26d7cb1f2927f380b&repo=classic

12736:d9fc47e89d42 Feature #2099 - Cleaning the file index.php.
http://code.google.com/p/chamilo/source/detail?r=d9fc47e89d4276ba6259ae14eaf5acbe2fddc68e&repo=classic

#24

Updated by Ivan Tcholakov almost 9 years ago

12741:aa546e3c10ec Feature #2099 - Course validation: Blocking the platform administrator's pages when the feature is not enabled.
http://code.google.com/p/chamilo/source/detail?r=aa546e3c10ec978c70e226a1f4d1246b00c3e3bd&repo=classic

#25

Updated by Ivan Tcholakov almost 9 years ago

12748:8e0be185398f Feature #2099 - Language related changes (7).
http://code.google.com/p/chamilo/source/detail?r=8e0be185398fc8ee12d0114425e1b407002dd2b2&repo=classic

12743:69469fdac309 Feature #2099 - Course request creation: Adding the course code within the e-mail notification messages.
http://code.google.com/p/chamilo/source/detail?r=69469fdac30979f70ecb536d4e35a772216bab78&repo=classic

#26

Updated by Ivan Tcholakov almost 9 years ago

12749:6ec523ca2b82 Feature #2099 - Course validation: Implementing e-mail requests for additional information about future courses/trainings.
http://code.google.com/p/chamilo/source/detail?r=6ec523ca2b821956b4133c70aa17b37985d010c2&repo=classic

#27

Updated by Ivan Tcholakov almost 9 years ago

12750:576e88576df1 Feature #2099 - Course validation: Implementing e-mail notifications for accepted courses/trainings.
http://code.google.com/p/chamilo/source/detail?r=576e88576df161daf0b36e87b1c4e1986b9b8374&repo=classic

#28

Updated by Ivan Tcholakov almost 9 years ago

12752:5e5cbb364794 Feature #2099 - An English language correction.
http://code.google.com/p/chamilo/source/detail?r=5e5cbb364794d9dc8b8f5775d4b8ea673897d5c3&repo=classic

12751:e62271d99e9e Feature #2099 - Course validation: Implementing e-mail notifications for rejected course/training requests.
http://code.google.com/p/chamilo/source/detail?r=e62271d99e9eab19dc9b90cf6ff212425649247b&repo=classic

#29

Updated by Ivan Tcholakov almost 9 years ago

12762:a4bc240acb89 Feature #2099 - Some error messages have been added.
http://code.google.com/p/chamilo/source/detail?r=a4bc240acb898c654c633b6877f3a3ff15e7b03f&repo=classic

12756:7c2bf652add0 Feature #2099 - Course request form: Making configurable the hard-coded URL to the "Terms and conditions" document.
http://code.google.com/p/chamilo/source/detail?r=7c2bf652add0d6cb5e3e26327c8cf8c74a25d942&repo=classic

#30

Updated by Ivan Tcholakov almost 9 years ago

12768:aa0b11228074 Feature #2099 - Cleaning the files main/admin/settings.php and main/admin/settings.lib.php. Some modifications are expected to be done there.
http://code.google.com/p/chamilo/source/detail?r=aa0b1122807496e1b7b9f08d323b40bf365d62dd&repo=classic

12767:e93984521c5f Feature #2099 - Mail sending: api_valid_email() is to be used inside the mailing functions for checkig agains valid e-mail addresses. The previous solution uses the eregi() function which is not PHP 5.3 "friendly".
http://code.google.com/p/chamilo/source/detail?r=e93984521c5f28ac5405e8a3b36ea0f068684c4b&repo=classic

12766:52ab9ae13d90 Feature #2099 - Shallow corrections for the file main/link/linkfunctions.php. This file needs to be reworked.
http://code.google.com/p/chamilo/source/detail?r=52ab9ae13d9084f6ec870f8f7423f3f0119988b9&repo=classic

12765:cdda1103a71e Feature #2099 - Shallow cleaning for the file main/link/linkfunctions.php, a correction is to be made there.
http://code.google.com/p/chamilo/source/detail?r=cdda1103a71eb0347e43dde006953da3446b7f39&repo=classic

12764:160d92c7be65 Feature #2099 - main_api.lib.php: Two functions api_valid_url() and api_valid_email() have been added.
http://code.google.com/p/chamilo/source/detail?r=160d92c7be6508dab51b85d84d004dc517903e42&repo=classic

12763:372793453529 Feature #2099 - Shallow cleaning the file main_api.lib.php.
http://code.google.com/p/chamilo/source/detail?r=372793453529b11b5fcab2af2301b8a62a985461&repo=classic

#31

Updated by Ivan Tcholakov almost 9 years ago

12769:54064cd7c530 Feature #2099 - Platform settings: URL and e-mail address validations have been added where it is applicable.
http://code.google.com/p/chamilo/source/detail?r=54064cd7c53085b05681469418b4c9e564fdafff&repo=classic

#32

Updated by Ivan Tcholakov almost 9 years ago

12770:48e437716beb Feature #2099 - Filling a new course request, this is the case when the special platform setting URL to "Terms and Conditions" is empty: If the Chamilo's module "Terms and Conditions" is activated, then its URL is shown on the form.
http://code.google.com/p/chamilo/source/detail?r=48e437716beb592aa9e6fcb58540b97f8b9eecee&repo=classic

#36

Updated by Ivan Tcholakov almost 9 years ago

12791:267d7f71c372 Feature #2099 - Coding the page for editition training requests (2) - A line that was put for testing purposes have been removed.
http://code.google.com/p/chamilo/source/detail?r=267d7f71c372ed5403ee165bc9b09a0d2092251a&repo=classic

12790:fc50c8f4839b Feature #2099 - Coding the page for editition training requests (1) - the initial pattern is created.
http://code.google.com/p/chamilo/source/detail?r=fc50c8f4839b0ea0d7caec0ed59e87c5ad663fa8&repo=classic

12789:70366e0a5e58 Feature #2099 - Adding a new page that will allow the platform administrator to view/edit training requests.
http://code.google.com/p/chamilo/source/detail?r=70366e0a5e5814f0612de288dc7bcf235a48a4b3&repo=classic

#37

Updated by Ivan Tcholakov almost 9 years ago

12795:387e6464fbb7 Feature #2099 - Coding the page for editition training requests (3).
http://code.google.com/p/chamilo/source/detail?r=387e6464fbb7573c97befa70de8ca0eceff66902&repo=classic

12794:e7ed7926ecdb Feature #2099 - Using the keyword "self" where it is appropriate.
http://code.google.com/p/chamilo/source/detail?r=e7ed7926ecdbf873534ccdd89551db4b5d23156b&repo=classic

#38

Updated by Ivan Tcholakov almost 9 years ago

12813:4654ec025299 Feature #2099 - Coding the page for editition training requests (5).
http://code.google.com/p/chamilo/source/detail?r=4654ec025299ce64815cd063045e26c1542dd067&repo=classic

12812:afea10648c5b Feature #2099 - Coding the page for editition training requests (4).
http://code.google.com/p/chamilo/source/detail?r=afea10648c5b9a0b4c7c92dea780f8641feb179c&repo=classic

#39

Updated by Ivan Tcholakov almost 9 years ago

12815:38b4fc4579f0 Feature #2099 - Coding the page for editition training requests (7).
http://code.google.com/p/chamilo/source/detail?r=38b4fc4579f05feb5a00a79a96a9116e11160d95&repo=classic

12814:47e642632b56 Feature #2099 - Coding the page for editition training requests (6).
http://code.google.com/p/chamilo/source/detail?r=47e642632b563da08a21d8efb9c24028cb5e36ab&repo=classic

#40

Updated by Ivan Tcholakov almost 9 years ago

12820:04f4f74e9bd9 Feature #2099 - Setting on the course request lists descending chronological order (the newest request is on the top).
http://code.google.com/p/chamilo/source/detail?r=04f4f74e9bd98c0ff0008c40c32c6be281aa2149&repo=classic

12819:a15b6f4da271 Feature #2099 - Some form fields have been set as mandatory.
http://code.google.com/p/chamilo/source/detail?r=a15b6f4da2715875c127050d3dff08826765454c&repo=classic

#41

Updated by Ivan Tcholakov almost 9 years ago

12822:d96373022fe2 Feature #2099 - Hiding some buttons from the page for editition training requests depending on the context.
http://code.google.com/p/chamilo/source/detail?r=d96373022fe2f3bd8e29513290181acac7b4907a&repo=classic

12821:2d6d0e935877 Feature #2099 - Adding search boxes to the course request lists.
http://code.google.com/p/chamilo/source/detail?r=2d6d0e935877c4ec452f85c41ad094584e21fb8f&repo=classic

#42

Updated by Ivan Tcholakov almost 9 years ago

  • Status changed from New to Needs more info
  • % Done changed from 0 to 80

Now I am going to implement the task #539. Code here is ready for testing.

#44

Updated by Ivan Tcholakov almost 9 years ago

12832:43951adb64e8 Feature #2099 - Course request creation: In the notification e-mail to the platform admin the URL of the newly created request has been made precise.
http://code.google.com/p/chamilo/source/detail?r=43951adb64e893ac0eb624f9da908d0ae4833a54&repo=classic

#45

Updated by Ivan Tcholakov almost 9 years ago

12850:ec9b616e063f Feature #2099 - A TODO has been resolved. Various corrections for dealing with quote characters in entered strings. The Database::escape_string() method has been applied on its correct places.
http://code.google.com/p/chamilo/source/detail?r=ec9b616e063fb7442aac1346fa5650265174d6bf&repo=classic

#46

Updated by Ivan Tcholakov almost 9 years ago

12851:f35f8266bba7 Feature #2099 - A correction to the previous transaction - a useless conversion to htmlentities has been removed.
http://code.google.com/p/chamilo/source/detail?r=f35f8266bba7ffff61dc3748b2b589853ae499cc&repo=classic

#47

Updated by Ivan Tcholakov over 8 years ago

  • Status changed from Needs more info to Feature implemented
  • % Done changed from 80 to 100

No complaints here, I am closing this task.

Also available in: Atom PDF