Ejemplo n.º 1
0
 function subscribeToCourse($id_user, $id_course, $id_date = 0)
 {
     require_once _lms_ . '/admin/modules/subscribe/subscribe.php';
     require_once _lms_ . '/lib/lib.date.php';
     require_once _lms_ . '/lib/lib.course.php';
     $date_man = new DateManager();
     $acl_man =& Docebo::user()->getAclManager();
     $query = "SELECT idCourse" . " FROM " . $GLOBALS['prefix_lms'] . "_courseuser" . " WHERE idUser = "******"SELECT subscribe_method FROM " . $GLOBALS['prefix_lms'] . "_course WHERE idCourse = " . $id_course));
     $waiting = 0;
     if ($subscribe_method == '1') {
         $waiting = 1;
     }
     if ($id_date != 0) {
         if (array_search($id_course, $courses) !== false) {
             if (array_search($id_date, $dates) === false) {
                 if (!$date_man->addUserToDate($id_date, $id_user, getLogUserId())) {
                     return false;
                 }
             }
         } else {
             $acl_man->addToGroup($level_idst[3], $id_user);
             $re = sql_query("INSERT INTO " . $GLOBALS['prefix_lms'] . "_courseuser\r\n\t\t\t\t\t\t\t\t\t(idUser, idCourse, edition_id, level, waiting, subscribed_by, date_inscr)\r\n\t\t\t\t\t\t\t\t\tVALUES ('" . $id_user . "', '" . $id_course . "', '0', '3', '" . $waiting . "', '" . getLogUserId() . "', '" . date("Y-m-d H:i:s") . "')");
             if ($re) {
                 addUserToTimeTable($id_user, $id_course, 0);
                 if (!$date_man->addUserToDate($id_date, $id_user, getLogUserId())) {
                     return false;
                 }
             }
         }
     } else {
         if (array_search($id_course, $courses) === false) {
             $acl_man->addToGroup($level_idst[3], $id_user);
             $re = sql_query("INSERT INTO " . $GLOBALS['prefix_lms'] . "_courseuser\r\n\t\t\t\t\t\t\t\t\t(idUser, idCourse, edition_id, level, waiting, subscribed_by, date_inscr)\r\n\t\t\t\t\t\t\t\t\tVALUES ('" . $id_user . "', '" . $id_course . "', '0', '3', '" . $waiting . "', '" . getLogUserId() . "', '" . date("Y-m-d H:i:s") . "')");
             if ($re) {
                 addUserToTimeTable($id_user, $id_course, 0);
             } else {
                 return false;
             }
         }
     }
     return true;
 }
Ejemplo n.º 2
0
 public function activateCourses($id_transaction, $id_user, $activations)
 {
     require_once _lms_ . '/lib/lib.subscribe.php';
     require_once _lms_ . '/admin/modules/subscribe/subscribe.php';
     require_once _lms_ . '/lib/lib.date.php';
     require_once _lms_ . '/lib/lib.course.php';
     $subscribe_man = new CourseSubscribe_Management();
     $date_man = new DateManager();
     $acl_man =& Docebo::user()->getAclManager();
     $query = "SELECT idCourse" . " FROM " . $this->table_courseuser . " WHERE idUser = "******"UPDATE " . $this->table_transaction_info . " SET activated = 1" . " WHERE id_transaction = " . $id_transaction . " AND id_course = " . $id_course . " AND id_date = " . $id_date;
                             if (!sql_query($query_up)) {
                                 return false;
                             }
                         }
                     } else {
                         $query_up = "UPDATE " . $this->table_transaction_info . " SET activated = 1" . " WHERE id_transaction = " . $id_transaction . " AND id_course = " . $id_course . " AND id_date = " . $id_date;
                         if (!sql_query($query_up)) {
                             return false;
                         }
                     }
                 } else {
                     $acl_man->addToGroup($level_idst[3], $id_user);
                     $re = mysql_query("INSERT INTO " . $GLOBALS['prefix_lms'] . "_courseuser\n\t\t\t\t\t\t\t\t\t\t\t(idUser, idCourse, edition_id, level, waiting, subscribed_by, date_inscr)\n\t\t\t\t\t\t\t\t\t\t\tVALUES ('" . $id_user . "', '" . $id_course . "', '0', '3', '0', '" . getLogUserId() . "', '" . date("Y-m-d H:i:s") . "')");
                     if ($re) {
                         $courses[$id_course] = $id_course;
                         addUserToTimeTable($id_user, $id_course, 0);
                         if (!$date_man->addUserToDate($id_date, $id_user, getLogUserId())) {
                             return false;
                         } else {
                             $query_up = "UPDATE " . $this->table_transaction_info . " SET activated = 1" . " WHERE id_transaction = " . $id_transaction . " AND id_course = " . $id_course . " AND id_date = " . $id_date;
                             if (!sql_query($query_up)) {
                                 return false;
                             }
                         }
                     } else {
                         return false;
                     }
                 }
             }
         } else {
             if (array_search($id_course, $courses) !== false) {
                 $query_up = "UPDATE " . $this->table_transaction_info . " SET activated = 1" . " WHERE id_transaction = " . $id_transaction . " AND id_course = " . $id_course . " AND id_date = 0";
                 if (!sql_query($query_up)) {
                     return false;
                 }
             } else {
                 $acl_man->addToGroup($level_idst[3], $id_user);
                 $re = mysql_query("INSERT INTO " . $GLOBALS['prefix_lms'] . "_courseuser\n\t\t\t\t\t\t\t\t\t\t(idUser, idCourse, edition_id, level, waiting, subscribed_by, date_inscr)\n\t\t\t\t\t\t\t\t\t\tVALUES ('" . $id_user . "', '" . $id_course . "', '0', '3', '0', '" . getLogUserId() . "', '" . date("Y-m-d H:i:s") . "')");
                 if ($re) {
                     $courses[$id_course] = $id_course;
                     addUserToTimeTable($id_user, $id_course, 0);
                     $query_up = "UPDATE " . $this->table_transaction_info . " SET activated = 1" . " WHERE id_transaction = " . $id_transaction . " AND id_course = " . $id_course . " AND id_date = 0";
                     if (!sql_query($query_up)) {
                         return false;
                     }
                 } else {
                     return false;
                 }
             }
         }
     }
     return true;
 }