diff --git a/plugin/buycourses/database.php b/plugin/buycourses/database.php index f1cc054280..7c3e04a45c 100644 --- a/plugin/buycourses/database.php +++ b/plugin/buycourses/database.php @@ -31,7 +31,7 @@ $tableSession = Database::get_main_table(TABLE_MAIN_SESSION); $sql = "SELECT id, name, date_start, date_end FROM $tableSession"; $res = Database::query($sql); while ($row = Database::fetch_assoc($res)) { - $presql = "INSERT INTO $table (session_id, name, date_start, date_end, visible) + $presql = "INSERT INTO $table (id, name, date_start, date_end, visible) VALUES ('" . $row['id'] . "','" . $row['name'] . "','" . $row['date_start'] . "','" . $row['date_end'] . "','NO')"; Database::query($presql); } @@ -59,7 +59,7 @@ while ($row = Database::fetch_assoc($res)) { $table = Database::get_main_table(TABLE_BUY_SESSION_COURSE); $sql = "CREATE TABLE IF NOT EXISTS $table ( id INT unsigned NOT NULL auto_increment PRIMARY KEY, - id_session SMALLINT(5) unsigned DEFAULT '0', + session_id SMALLINT(5) unsigned DEFAULT '0', course_code VARCHAR(40), nbr_users SMALLINT(5) unsigned DEFAULT '0', sync int)"; @@ -69,8 +69,8 @@ $tableSessionCourse = Database::get_main_table(TABLE_MAIN_SESSION_COURSE); $sql = "SELECT * FROM $tableSessionCourse"; $res = Database::query($sql); while ($row = Database::fetch_assoc($res)) { - $presql = "INSERT INTO $table (id_session, course_code, nbr_users) - VALUES ('" . $row['id_session'] . "','" . $row['course_code'] . "','" . $row['nbr_users'] . "')"; + $presql = "INSERT INTO $table (session_id, c_id, nbr_users) + VALUES ('" . $row['session_id'] . "','" . $row['c_id'] . "','" . $row['nbr_users'] . "')"; Database::query($presql); } diff --git a/plugin/buycourses/js/buycourses.js b/plugin/buycourses/js/buycourses.js index a499492b1e..7ca4c9f64b 100644 --- a/plugin/buycourses/js/buycourses.js +++ b/plugin/buycourses/js/buycourses.js @@ -32,17 +32,18 @@ $(document).ready(function () { }); $(".save").click(function () { - var visible = $(this).parent().parent().prev().prev().children().attr("checked"); - var price = $(this).parent().parent().prev().children().attr("value"); + var currentRow = $(this).closest("tr"); + var courseOrSessionObject ={ + tab: "save_mod", + visible: currentRow.find("[name='visible']").is(':checked') ? 1 : 0, + price: currentRow.find("[name='price']").val() + }; + var course_id = $(this).attr('id'); - var courseOrSession = $(this).parent().parent()[0].attributes[0].value; - if (courseOrSession.indexOf("session") > -1) { - courseOrSession = "session_id"; - } else { - courseOrSession = "course_id"; - } - var courseOrSessionObject = {tab: "save_mod", visible: visible, price: price}; + var courseOrSession = ($(this).closest("td").attr('id')).indexOf("session") > -1 ? "session_id" : "course_id"; + courseOrSessionObject[courseOrSession] = course_id; + $.post("function.php", courseOrSessionObject, function (data) { if (data.status == "false") { diff --git a/plugin/buycourses/src/buy_course.lib.php b/plugin/buycourses/src/buy_course.lib.php index f4a6615c19..7629514d8c 100644 --- a/plugin/buycourses/src/buy_course.lib.php +++ b/plugin/buycourses/src/buy_course.lib.php @@ -25,14 +25,14 @@ function sync() $sql = "SELECT session_id, c_id, nbr_users FROM $tableSessionRelCourse"; $res = Database::query($sql); while ($row = Database::fetch_assoc($res)) { - $sql = "SELECT 1 FROM $tableBuySessionRelCourse WHERE id_session=" . $row['session_id']; + $sql = "SELECT 1 FROM $tableBuySessionRelCourse WHERE session_id=" . $row['session_id']; $result = Database::query($sql); if (Database::affected_rows($result) > 0) { - $sql = "UPDATE $tableBuySessionRelCourse SET sync = 1 WHERE id_session=" . $row['session_id']; + $sql = "UPDATE $tableBuySessionRelCourse SET sync = 1 WHERE session_id=" . $row['session_id']; Database::query($sql); } else { $courseCode = api_get_course_info_by_id($row['c_id'])['code']; - $sql = "INSERT INTO $tableBuySessionRelCourse (id_session, course_code, nbr_users, sync) + $sql = "INSERT INTO $tableBuySessionRelCourse (session_id, course_code, nbr_users, sync) VALUES (" . $row['session_id'] . ", '" . $courseCode . "', " . $row['nbr_users'] . ", 1);"; Database::query($sql); } @@ -49,9 +49,9 @@ function sync() $sql = "SELECT id, code, title FROM $tableCourse"; $res = Database::query($sql); while ($row = Database::fetch_assoc($res)) { - $sql = "SELECT id_session FROM $tableBuySessionRelCourse + $sql = "SELECT session_id FROM $tableBuySessionRelCourse WHERE course_code = '" . $row['code'] . "' LIMIT 1"; - $courseIdSession = Database::fetch_assoc(Database::query($sql))['id_session']; + $courseIdSession = Database::fetch_assoc(Database::query($sql))['session_id']; if (!is_numeric($courseIdSession)) { $courseIdSession = 0; } diff --git a/plugin/buycourses/src/function.php b/plugin/buycourses/src/function.php index edbbff0f06..aab58404da 100644 --- a/plugin/buycourses/src/function.php +++ b/plugin/buycourses/src/function.php @@ -442,7 +442,7 @@ if ($_REQUEST['tab'] == 'save_mod') { $tableField = 'session_id'; } - $visible = (isset($_REQUEST['visible'])) ? 1 : 0; + $visible = intval($_REQUEST['visible']); $price = Database::escape_string($_REQUEST['price']); $sql = "UPDATE $tableBuy