summaryrefslogtreecommitdiff
path: root/static/website/js/cloud.js
diff options
context:
space:
mode:
Diffstat (limited to 'static/website/js/cloud.js')
-rw-r--r--static/website/js/cloud.js1025
1 files changed, 1025 insertions, 0 deletions
diff --git a/static/website/js/cloud.js b/static/website/js/cloud.js
new file mode 100644
index 0000000..9d99a3c
--- /dev/null
+++ b/static/website/js/cloud.js
@@ -0,0 +1,1025 @@
+/* Ajax loader */
+function ajax_loader(key) {
+ if (key == "clear") {
+ $(".ajax-loader").remove();
+ } else {
+ $(".ajax-loader").remove();
+ $(key).after("<span class='ajax-loader'></span>");
+ }
+}
+
+/**************************** math captcha function ***********************/
+
+var total;
+
+function getRandom(){
+ return Math.ceil(Math.random()* 20);
+}
+
+function createSum(){
+ var randomNum1 = getRandom(),
+ randomNum2 = getRandom();
+ total =randomNum1 + randomNum2;
+ $("#question" ).text( randomNum1 + " + " + randomNum2 + "=" );
+ $("#ans").val('');
+ checkInput();
+}
+
+function checkInput(){
+ var input = $("#ans").val(),
+ slideSpeed = 200,
+ hasInput = !!input,
+ valid = hasInput && input == total;
+ $('#message').toggle(!hasInput);
+ $('input[type=submit]').prop('disabled', !valid);
+ $('#success').toggle(valid);
+ $('#fail').toggle(hasInput && !valid);
+}
+/**************************** math captcha function end *******************/
+$(document.body).ready(function() {
+ var editor = CodeMirror.fromTextArea(document.getElementById(
+ "code"), {
+ lineNumbers: true,
+ lineWrapping: true,
+ theme: "default",
+ extraKeys: {
+ "F11": function(cm) {
+ cm.setOption("fullScreen", !cm.getOption(
+ "fullScreen"));
+ },
+ "Esc": function(cm) {
+ if (cm.getOption("fullScreen")) cm
+ .setOption(
+ "fullScreen", false);
+ }
+ }
+ });
+
+ var result = CodeMirror.fromTextArea(document.getElementById(
+ "result"), {
+ lineWrapping: true,
+ theme: "default",
+ readOnly: true,
+ extraKeys: {
+ "F11": function(cm) {
+ cm.setOption("fullScreen", !cm.getOption(
+ "fullScreen"));
+ },
+ "Esc": function(cm) {
+ if (cm.getOption("fullScreen")) cm
+ .setOption(
+ "fullScreen", false);
+ }
+ }
+ });
+
+ var initial_code = '';
+ // editor.setValue("");
+ // result.setValue("");
+ // editor.clearHistory();
+
+ // hide revision submit button initially
+ // $("#submit-revision").show()
+
+ /* Code Mirror Controls */
+ $fullscreen_code = $("#fullscreen-code");
+ $toggle_code = $("#toggle-code");
+
+ $fullscreen_code.click(function(e) {
+ editor.setOption("fullScreen", !editor.getOption(
+ "fullScreen"));
+ editor.focus();
+ e.preventDefault();
+ });
+
+ $toggle_code.click(function(e) {
+ if (editor.getOption("theme") == "monokai") {
+ editor.setOption("theme", "default");
+ } else {
+ editor.setOption("theme", "monokai");
+ }
+ e.preventDefault();
+ });
+
+ $fullscreen_result = $("#fullscreen-result");
+ $toggle_result = $("#toggle-result");
+
+ $fullscreen_result.click(function(e) {
+ result.setOption("fullScreen", !result.getOption(
+ "fullScreen"));
+ result.focus();
+ e.preventDefault();
+ });
+
+ $toggle_result.click(function(e) {
+ if (result.getOption("theme") == "monokai") {
+ result.setOption("theme", "default");
+ } else {
+ result.setOption("theme", "monokai");
+ }
+ e.preventDefault();
+ });
+
+ /*
+ * Selectors function
+ * Write the queries using .on()
+ */
+ /* Contributor details */
+ // $(document).on("click", "#bug-form #id_notify", function() {
+ // $("#id_email_wrapper").toggle(this.checked);
+ // });
+
+ $("#plot_download").hide();
+ $("#diff-wrapper").hide();
+ $("#databox-wrapper").hide();
+ if ($("#main_categories").val() == 0) {
+ $("#category-wrapper").hide();
+ $("#books-wrapper").hide();
+ $("#chapters-wrapper").hide();
+ $("#examples-wrapper").hide();
+ $("#revisions-wrapper").hide();
+ $("#download-book").hide();
+ $("#diff-wrapper").hide();
+ $("#contributor").hide();
+ $("#databox-wrapper").hide();
+ }
+ if ($("#categories").val() == 0) {
+ $("#books-wrapper").hide();
+ $("#chapters-wrapper").hide();
+ $("#examples-wrapper").hide();
+ $("#revisions-wrapper").hide();
+ $("#download-book").hide();
+ $("#diff-wrapper").hide();
+ $("#contributor").hide();
+ $("#databox-wrapper").hide();
+ }
+ if ($("#books").val() == 0) {
+ $("#chapters-wrapper").hide();
+ $("#examples-wrapper").hide();
+ $("#revisions-wrapper").hide();
+ $("#download-book").hide();
+ $("#diff-wrapper").hide();
+ $("#contributor").hide();
+ $("#databox-wrapper").hide();
+ } else {
+ $("#download-book").show();
+ $("#contributor").show();
+ }
+ if ($("#chapters").val() == 0) {
+ $("#examples-wrapper").hide();
+ $("#revisions-wrapper").hide();
+ $("#diff-wrapper").hide();
+ $("#download-chapter").hide();
+ } else {
+ $("#download-chapter").show();
+ }
+ if ($("#examples").val() == 0) {
+ $("#revisions-wrapper").hide();
+ $("#diff-wrapper").hide();
+ $("#download-example").hide();
+ $("#databox-wrapper").hide();
+ } else {
+ $("#download-example").show();
+ }
+ /*******************************************/
+ /****** Below removed dajax ***************/
+ /*******************************************/
+ /*********** Main categories change ********/
+ /*******************************************/
+ $(document.body).on("change", "#main_categories",
+ function() {
+ ajax_loader(this);
+ var maincat_id = $('#main_categories').find(
+ ":selected").val();
+ if (maincat_id != 0) {
+ $("#categories").html("");
+ $("#category-wrapper").show();
+ $("#books").html("");
+ editor.setValue("");
+ result.setValue("");
+ $("#example_views_count").text("");
+ $("#chapters-wrapper").hide();
+ $("#examples-wrapper").hide();
+ $("#books-wrapper").hide();
+ $("#revisions-wrapper").hide();
+ $("#download-book").hide();
+ $("#submit-revision").hide();
+ $("#review-link").hide();
+ $("#contributor").hide();
+ $("#databox-wrapper").hide();
+ $.ajax({
+ url: 'get_subcategories/',
+ dataType: 'JSON',
+ type: 'GET',
+ data: {
+ maincat_id: maincat_id,
+ },
+ success: function(data) {
+ ajax_loader("clear");
+ $("#categories").html(
+ '');
+ $("#categories").html(
+ ' <option value="">Select Subcategory</option>'
+ );
+ var j = 1;
+ for (var i = 0; i <
+ data.length; i++) {
+ $('#categories').append(
+ '<option value="' +
+ data[i].subcategory_id +
+ '">' + j + ' - ' +
+ data[i].subcategory +
+ '</option>'
+ );
+ j++;
+ }
+ }
+ });
+ } else {
+ ajax_loader("clear");
+ $("#example_views_count").text("");
+ editor.setValue("");
+ result.setValue("");
+ $("#categories").html("");
+ $("#category-wrapper").hide();
+ $("#review-link").hide();
+ $("#books-wrapper").hide();
+ $("#chapters-wrapper").hide();
+ $("#examples-wrapper").hide();
+ $("#revisions-wrapper").hide();
+ $("#download-book").hide();
+ $("#diff-wrapper").hide();
+ $("#databox-wrapper").hide();
+ }
+ });
+ /*******************************************/
+ /*******************************************/
+ /**************** sub categories change ********/
+ /*******************************************/
+ $(document.body).on("change", "#categories", function() {
+ ajax_loader(this);
+ var maincat_id = $('#main_categories').find(
+ ":selected").val();
+ var subcat_id = $('#categories').find(
+ ":selected").val();
+ if (subcat_id != 0) {
+ $("#books-wrapper").show();
+ $("#books").html("");
+ editor.setValue("");
+ result.setValue("");
+ $("#example_views_count").text("");
+ $("#chapters-wrapper").hide();
+ $("#examples-wrapper").hide();
+ $("#revisions-wrapper").hide();
+ $("#download-book").hide();
+ $("#submit-revision").hide();
+ $("#review-link").hide();
+ $.ajax({
+ url: 'get_books/',
+ dataType: 'JSON',
+ type: 'GET',
+ data: {
+ maincat_id: maincat_id,
+ cat_id: subcat_id,
+ },
+ success: function(data) {
+ ajax_loader("clear");
+ $("#books").html('');
+ $("#books").html(
+ ' <option value="">Select Book</option>'
+ );
+ if(data.length ==0){
+ alert("No book available in this subcategory");
+ $("#contributor").hide();
+ }
+ var j = 1;
+ for (var i = 0; i <
+ data.length; i++) {
+ $('#books').append(
+ '<option value="' +
+ data[i].id +
+ '">' + j + ' - '+
+ data[i].book +
+ ' (by ' +
+ data[i].author +
+ ' )' +
+ '</option>'
+ );
+ j++;
+ }
+ }
+ });
+ } else {
+ ajax_loader("clear");
+ $("#example_views_count").text("");
+ editor.setValue("");
+ result.setValue("");
+ $("#review-link").hide();
+ $("#books-wrapper").hide();
+ $("#chapters-wrapper").hide();
+ $("#examples-wrapper").hide();
+ $("#revisions-wrapper").hide();
+ $("#download-book").hide();
+ $("#diff-wrapper").hide();
+ $("#contributor").hide();
+ }
+ });
+ /*******************************************/
+ /*******************************************/
+ /**************** book change **************/
+ /*******************************************/
+ $(document.body).on("change", "#books", function() {
+ var book_id = $('#books').find(":selected").val();
+ ajax_loader(this);
+ $("#chapters-wrapper").show();
+ console.log(book_id);
+
+ if (book_id != 0) {
+ $("#download-book").show();
+ $("#contributor").show();
+ $("#chapters-wrapper").show();
+ editor.setValue("");
+ result.setValue("");
+ $("#example_views_count").text("");
+ $("#examples-wrapper").hide();
+ $("#revisions-wrapper").hide();
+ $("#download-chapter").hide();
+ $("#submit-revision").hide();
+ $("#review-link").hide();
+ $.ajax({
+ url: 'get_chapters/',
+ dataType: 'JSON',
+ type: 'GET',
+ data: {
+ book_id: book_id,
+ },
+ success: function(data) {
+ ajax_loader("clear");
+ $("#chapters").html(
+ '');
+ $("#chapters").html(
+ ' <option value="">Select Chapter</option>'
+ );
+ if(data.length ==0){
+ alert("Chapter is not available from this book for R on cloud, Please try another book/chapter");
+ }
+ for (var i = 0; i <
+ data.length; i++) {
+ $('#chapters').append(
+ '<option value="' +
+ data[i].id +
+ '">' +
+ data[i].number +
+ ' - ' +
+ data[i].chapter +
+ '</option>'
+ );
+ }
+ }
+ });
+ } else {
+ ajax_loader("clear");
+ $("#example_views_count").text("");
+ $("#chapters-wrapper").hide();
+ $("#download-book").hide();
+ $("#examples-wrapper").hide();
+ $("#revisions-wrapper").hide();
+ editor.setValue("");
+ result.setValue("");
+ $("#submit-revision").hide();
+ $("#contributor").hide();
+ $("#review-link").hide();
+ $("#diff-wrapper").hide();
+ }
+ });
+ /*******************************************/
+ /*******************************************/
+ /************ chapter change ***************/
+ /*******************************************/
+ $(document.body).on("change", "#chapters", function() {
+ ajax_loader(this);
+ var chapter_id = $('#chapters').find(
+ ":selected").val();
+ $("#examples-wrapper").show();
+ console.log(chapter_id);
+ if (chapter_id != 0) {
+ $("#examples-wrapper").show();
+ $("#download-chapter").show();
+ editor.setValue("");
+ result.setValue("");
+ $("#example_views_count").text("");
+ $("#revisions-wrapper").hide();
+ $("#download-example").hide();
+ $("#review-link").hide();
+ $.ajax({
+ url: 'get_examples/',
+ dataType: 'JSON',
+ type: 'GET',
+ data: {
+ chapter_id: chapter_id,
+ },
+ success: function(data) {
+ ajax_loader("clear");
+ $("#examples").html(
+ ' <option value="">Select Example</option>'
+ );
+ if(data.length ==0){
+ alert("Example is not available from this chapter for R on cloud, Please try another book/chapter/example");
+ }
+ for (var i = 0; i <
+ data.length; i++) {
+ $('#examples').append(
+ '<option value="' +
+ data[i].id +
+ '">' +
+ data[i].number +
+ ' - ' +
+ data[i].caption +
+ '</option>'
+ );
+ }
+ }
+ });
+ } else {
+ ajax_loader("clear");
+ $("#example_views_count").text("");
+ $("#download-chapter").hide();
+ $("#examples-wrapper").hide();
+ $("#revisions-wrapper").hide();
+ editor.setValue("");
+ result.setValue("");
+ $("#submit-revision").hide();
+ $("#review-link").hide();
+ $("#diff-wrapper").hide();
+ }
+ });
+ /*******************************************/
+ /*******************************************/
+ /************ Example change **************/
+ /*******************************************/
+ $(document.body).on("change", "#examples", function() {
+ ajax_loader(this);
+ var example_id = $('#examples').find(
+ ":selected").val();
+ //$("#revisions-wrapper").html("");
+ $("#download-example").show();
+ if (example_id != 0) {
+ $("#example_views_count").text("");
+ $("#revisions-wrapper").show();
+ $("#download-example").show();
+ $("#submit-revision").show();
+ $("#databox-wrapper").hide();
+ editor.setValue("");
+ result.setValue("");
+ ajax_loader('#revisions');
+ $.ajax({
+ url: 'get_revisions/',
+ dataType: 'JSON',
+ type: 'GET',
+ data: {
+ example_id: example_id,
+ },
+ success: function(data) {
+ var ex_id = example_id;
+ $.ajax({
+ url: 'update_view_count/',
+ dataType: 'JSON',
+ type: 'GET',
+ data: {
+ ex_id: ex_id,
+ },
+ success: function(data) {
+ $("#example_views_count").text(data);
+ }
+ });
+ $("#revisions").html(
+ ' <option value="">Select a revision</option>'
+ );
+
+ var i = 1;
+ data.forEach(
+ function(
+ item) {
+ $('#revisions').append(
+ '<option value="' + item.commit_sha + '"> ' +
+ i + ' - ' + item.commit_message +
+ '</option>'
+ );
+ i++;
+ });
+ $("#revisions-diff").html(
+ ' <option value="">Select a revision</option>'
+ );
+ var i = 1;
+ data.forEach(
+ function(
+ item) {
+ $('#revisions-diff').append(
+ '<option value="' + item.commit_sha + '"> ' +
+ i + ' - ' + item.commit_message +
+ '</option>'
+ );
+ i++;
+ });
+ $(
+ '#revisions option:eq(1)'
+ ).prop(
+ 'selected',
+ true);
+ $.ajax({
+ url: 'get_code/',
+ dataType: 'JSON',
+ type: 'GET',
+ data: {
+ commit_sha: $('#revisions').val(),
+ example_id: example_id,
+ },
+ success: function(data) {
+ if (data.review != 0) {
+ $("#review").show();
+ $("#review").attr("href", data.review_url);
+ $("#review").text(data.review + " " + "Review");
+ } else {
+ $("#review").hide();
+ }
+ $("#example_views_count").text(data.exmple);
+ editor.setValue("clear; // Remove clear, clc from code if you want to access existing stored variable from the memory" +
+ "\n" + "\n" + data.code);
+ initial_code = editor.getValue();
+ ajax_loader("clear");
+ }
+ });
+ }
+ });
+ } else {
+ ajax_loader("clear");
+ $("#example_count").text("");
+ $("#revisions-wrapper").hide();
+ $("#download-example").hide();
+ $("#submit-revision").hide();
+ editor.setValue("");
+ result.setValue("");
+ $("#diff-wrapper").hide();
+ $("#databox-wrapper").hide();
+ }
+ });
+ /********************************************/
+ /********************************************/
+ /********** revision-change ************/
+ /********************************************/
+ $(document.body).on("change", "#revisions", function(e) {
+ ajax_loader(this);
+ $("#revisions-two").hide()
+ var example_id = $('#examples').find(
+ ":selected").val();
+ if ($(this).val()) {
+
+ $.ajax({
+ url: 'get_code/',
+ dataType: 'JSON',
+ type: 'GET',
+ data: {
+ commit_sha: $('#revisions').val(),
+ example_id: example_id,
+ },
+ success: function(data) {
+ ajax_loader("clear");
+ if (data.review != 0) {
+ $("#review").show();
+ $("#review").attr("href", data.review_url);
+ $("#review").text(data.review + " " + "Review");
+ } else {
+ $("#review").hide();
+ }
+ editor.setValue(data.code);
+ initial_code = editor.getValue();
+ }
+ });
+
+
+
+ // show revision submit button when a revision is loaded
+ $("#submit-revision").show();
+ $("#revisions-two").show();
+ }
+ });
+ /********************************************/
+ /********************************************/
+ /********** revision-diff change ************/
+ /********************************************/
+ $(document).on("change", "#revisions-diff", function(e) {
+ var revName = $("#revisions-diff").find(
+ ":selected").text();
+ var example_id = $('#examples').find(
+ ":selected").val();
+ if ($(this).val()) {
+ ajax_loader(this);
+ $.ajax({
+ url: 'get_diff/',
+ dataType: 'JSON',
+ type: 'GET',
+ data: {
+ diff_commit_sha: $(
+ '#revisions').val(),
+ example_id: example_id,
+ },
+ success: function(data) {
+ ajax_loader("clear");
+ $("#diff_wrapper").modal('show');
+ $("#diff-area").html(
+ diffString(
+ editor.getValue(),
+ data.code2
+ ));
+ $("#diff-first").html(
+ 'editor code'
+ );
+ $("#diff-second").html(
+ revName);
+ editor.setValue(data.code2);
+ initial_code = editor
+ .getValue()
+ }
+ });
+ }
+ });
+ /********************************************/
+ /********************************************/
+ /******** Execute the code ******************/
+ /********************************************/
+ $plotbox_wrapper = $("#plotbox_wrapper");
+ $plotbox = $("#plotbox");
+
+ var baseurl = window.location.origin + window.location.pathname;
+ $(document).on("click", "#execute", function() {
+ if(editor.getValue() != ""){
+ ajax_loader(this);
+ $("#execute-inner").html("Executing...");
+ var send_data = {
+ token: $(
+ "[name='csrfmiddlewaretoken']"
+ ).val(),
+ code: editor.getValue(),
+ book_id: $("#books").val() || 0,
+ chapter_id: $("#chapters").val() || 0,
+ example_id: $("#examples").val() || 0
+ };
+ $.post("/execute-code", send_data,
+ function(data) {
+ var exists;
+ $("#execute-inner").html(
+ "Execute");
+ ajax_loader('clear');
+ result.setValue(data.output);
+ pp = baseurl + data.plot_path.slice(1);
+ url = pp;
+ if (data.plot_path) {
+ $.ajax({
+ type: "HEAD",
+ async: true,
+ url: pp,
+ }).done(function() {
+ if( data.plot_path != 0){
+ $plot = $("<img>");
+ $plot.attr({
+ src: data.plot_path,
+ width: '100%'
+ });
+ $plotbox.html($plot);
+ $plotbox_wrapper.modal('show');
+ var dt = $(
+ "#examples option:selected"
+ )
+ .text();
+ $("#plot_download").show();
+ $("#plot_download").attr(
+ "download", dt +
+ '.png');
+ $("#plot_download").attr(
+ "href", data.plot_path
+ );
+ }
+ });
+ }
+ });
+ }else{
+ alert("Write a R code for execution.");
+ }
+ });
+ /********************************************/
+ /********************************************/
+ /****** Download book, chapter, example *****/
+ /********************************************/
+ $(document).on("click", "#download-book", function(e) {
+ window.location =
+ "http://r.fossee.in/download/book/" + $(
+ "#books").val();
+ e.preventDefault();
+ });
+
+ $(document).on("click", "#download-chapter", function(e) {
+ window.location =
+ "http://r.fossee.in/download/chapter/" +
+ $("#chapters").val();
+ e.preventDefault();
+ });
+
+ $(document).on("click", "#download-example", function(e) {
+ window.location =
+ "http://r.fossee.in/download/example/" +
+ $("#examples").val();
+ e.preventDefault();
+ });
+ /********************************************/
+ /********************************************/
+ /****** Get contributor *********************/
+ /********************************************/
+ $(document).on("click", "#contributor", function(e) {
+ $.ajax({
+ url: 'get_contributor/',
+ dataType: 'JSON',
+ type: 'GET',
+ data: {
+ book_id: $("#books").val()
+ },
+ success: function(data) {
+
+ $('#full_name').html(data
+ .contributor_name
+ );
+ $('#faculty').html(data.proposal_faculty);
+ $('#reviewer').html(data.proposal_reviewer);
+ $('#university').html(
+ data.proposal_university
+ );
+ $("#contributor_wrapper").modal('show');
+ }
+ });
+ e.preventDefault();
+ });
+ /********************************************/
+ /********************************************/
+ /****** Bug form handling *******************/
+ /********************************************/
+ $(document).on("click", "#bug", function(e) {
+
+ $.ajax({
+ url: 'get_bug_form/',
+ dataType: 'JSON',
+ type: 'GET',
+ data: {
+ bug_form: 'bug_form_pop'
+ },
+ success: function(data) {
+ $('#bug_form_wrapper').html(
+ data);
+ $("#bug_form_wrapper").modal('show');
+ /**************** math captcha for form ************************/
+ //create initial sum
+ createSum();
+ // On "reset button" click, generate new random sum
+ $('button[type=reset]').click(createSum);
+ // On user input, check value
+ $( "#ans" ).keyup(checkInput);
+/*********************************************************/
+ }
+ });
+ e.preventDefault();
+ });
+ /********************************************/
+
+ $(document.body).on("click", "#bug-form-submit", function(e) {
+ ajax_loader(this);
+ var token = $('input[name="csrfmiddlewaretoken"]').prop('value');
+ ex_id = $("#examples").val();
+ cat_id = $("#categories").val();
+ book_id = $("#books").val();
+ chapter_id = $("#chapters").val();
+ issue_id = $("#id_issue").val();
+ id_description_wrapper = $.trim($("#id_description").val());
+ id_email = $.trim($("#id_email").val());
+ console.log(id_description_wrapper.length);
+ if (issue_id == 0 || id_description_wrapper.length == 0 || id_email.length == 0) {
+ if (issue_id == 0) {
+ $('#id_issue').css({
+ "border": '#FF0000 1px solid'
+ });
+ alert("Please select any issues");
+ } else if (id_description_wrapper.length == 0) {
+ $('#id_issue').css({
+ "border": '#FF0000 1px solid'
+ });
+ alert("Please insert issue description");
+ } else if (id_email.length == 0) {
+ $('#id_email').css({
+ "border": '#FF0000 1px solid'
+ });
+ alert("Please insert email id");
+ } else {
+ if (!ex_id) {
+ ex_id = "NULL";
+ }
+ }
+ } else {
+
+
+ $.ajax({
+ url: 'get_bug_form_submit/',
+ dataType: 'JSON',
+ type: 'POST',
+ data: {
+ 'csrfmiddlewaretoken': token,
+ form: $("#bug-form").serialize(true),
+ cat_id: cat_id,
+ book_id: book_id,
+ chapter_id: chapter_id,
+ ex_id: ex_id,
+ description: id_description_wrapper,
+ issue: issue_id,
+ email: id_email,
+ },
+ success: function(data) {
+ console.log(data);
+ alert(data);
+ ajax_loader("clear");
+ $("#bug_form_wrapper").modal('toggle');
+ }
+ });
+ }
+
+ e.preventDefault();
+ });
+ /********************************************/
+ /********************************************/
+ /************ submit revision handling ******/
+ /********************************************/
+ $(document).on("click", "#submit-revision", function(e) {
+
+
+ $.ajax({
+ url: 'get_submit_revision_form/',
+ dataType: 'JSON',
+ type: 'GET',
+ data: {
+ code: editor.getValue(),
+ initial_code: initial_code
+ },
+ success: function(data) {
+ $(
+ "#submit-revision-wrapper"
+ ).html(data);
+ $(
+ "#submit-revision-wrapper"
+ ).lightbox_me({
+ centered: false
+ });
+ }
+ });
+ e.preventDefault();
+ });
+ /********************************************/
+ /********************************************/
+ /********* submit revision form submit ******/
+ /********************************************/
+ $(document).on("click", "#revision-form-submit", function(
+ e) {
+ ajax_loader(this);
+
+ $.ajax({
+ url: 'get_submit_revision_form_submit/',
+ dataType: 'JSON',
+ type: 'GET',
+ data: {
+ form: $('#revision-form').serialize(
+ true),
+ code: editor.getValue(),
+ },
+ success: function(data) {
+ initial_code = editor.getValue()
+ alert(data);
+ $(
+ "#submit-revision-wrapper"
+ ).trigger("close");
+ }
+ });
+ });
+ /********************************************/
+ $(document).on("click", "#search", function() {
+ ajax_loader(this);
+ $("#relevant").html('');
+ var search_string = jQuery.trim($("#search-input").val());
+ if (search_string == '') {
+ search_string = 'Null';
+ }
+ $.ajax({
+ url: 'search_book',
+ dataType: 'JSON',
+ type: 'GET',
+ data: {
+ search_string: search_string,
+ },
+ success: function(data) {
+ $("#relevant").html('<h2>Relevant</h2><hr>');
+ for (var i = 0; i < data.length; i++) {
+ $("#relevant").append(
+ '<a href="?book_id=' + data[i].ids + '" class="">' + data[i].book +
+ ' (Author: ' + data[i].author + ')</a><hr>');
+
+ }
+ ajax_loader("clear");
+ }
+ }),
+ $.ajax({
+ url: 'search_book/popular/',
+ dataType: 'JSON',
+ type: 'GET',
+ data: {
+ search_string: search_string,
+ },
+ success: function(data) {
+ $("#popular").html('<h2>Popular</h2><hr>');
+ for (var i = 0; i < data.length; i++) {
+ $("#popular").append(
+ '<a href="?book_id=' + data[i].ids + '" class="">' + data[i].book +
+ ' (Author: ' + data[i].author + ')</a><hr>');
+ }
+ ajax_loader("clear");
+ }
+
+ }),
+ $.ajax({
+ url: 'search_book/recent/',
+ dataType: 'JSON',
+ type: 'GET',
+ data: {
+ search_string: search_string,
+ },
+ success: function(data) {
+ $("#recent").html('<h2>Recent</h2><hr>');
+ for (var i = 0; i < data.length; i++) {
+ $("#recent").append(
+ '<a href="?book_id=' + data[i].ids + '" class="">' + data[i].book +
+ ' (Author: ' + data[i].author + ')</a><hr>');
+ }
+ ajax_loader("clear");
+ }
+ });
+ });
+
+ $(document).on("click", "#search_book", function(e) {
+ ajax_loader("#search");
+ $("#popular").html('');
+ $("#recent").html('');
+ var search_string = 'popular';
+ if (search_string == '') {
+ search_string = 'Null';
+ }
+ $.ajax({
+ url: 'search_book/popular/',
+ dataType: 'JSON',
+ type: 'GET',
+ data: {
+ search_string: search_string,
+ },
+ success: function(data) {
+ console.log(data);
+ $("#popular").html('<h2>Popular</h2><hr>');
+ for (var i = 0; i < data.length; i++) {
+ $("#popular").append(
+ '<a href="?book_id=' + data[i].ids + '" class="">' + data[i].book +
+ ' (Author: ' + data[i].author + ')</a><hr>');
+ }
+ ajax_loader("clear");
+ }
+ }),
+ $.ajax({
+ url: 'search_book/recent/',
+ dataType: 'JSON',
+ type: 'GET',
+ data: {
+ search_string: search_string,
+ },
+ success: function(data) {
+ console.log(data);
+ $("#recent").html('<h2>Recent</h2><hr>');
+ for (var i = 0; i < data.length; i++) {
+ $("#recent").append(
+ '<a href="?book_id=' + data[i].ids + '" class="">' + data[i].book +
+ ' (Author: ' + data[i].author + ')</a><hr>');
+ }
+ ajax_loader("clear");
+ }
+ });
+ e.preventDefault();
+
+ });
+ //on hover pop the disclaimer
+ /*
+ $("#disclaimer").hover(function() {
+ $('#disclaimer-text').modal({
+ show: true
+ });
+ });
+ */
+
+}); //document.readOnly()