diff options
Diffstat (limited to 'interface/js/app/upload.js')
-rw-r--r-- | interface/js/app/upload.js | 332 |
1 files changed, 166 insertions, 166 deletions
diff --git a/interface/js/app/upload.js b/interface/js/app/upload.js index 9be8d3289..05b47e82d 100644 --- a/interface/js/app/upload.js +++ b/interface/js/app/upload.js @@ -23,192 +23,192 @@ */ define(["jquery"], -function($) { - var interface = {} + function($) { + var interface = {} - function cleanTextUpload(source) { - $("#" + source + "TextSource").val(""); - } - - // @upload text - function uploadText(rspamd, data, source, headers) { - var url; - if (source === "spam") { - url = "learnspam"; - } else if (source === "ham") { - url = "learnham"; - } else if (source == "fuzzy") { - url = "fuzzyadd"; - } else if (source === "scan") { - url = "scan"; + function cleanTextUpload(source) { + $("#" + source + "TextSource").val(""); } - $.ajax({ - data: data, - dataType: "json", - type: "POST", - url: url, - processData: false, - jsonp: false, - beforeSend: function (xhr) { - xhr.setRequestHeader("Password", rspamd.getPassword()); - $.each(headers, function (name, value) { - xhr.setRequestHeader(name, value); - }); - }, - success: function (data) { - cleanTextUpload(source); - if (data.success) { - rspamd.alertMessage("alert-success", "Data successfully uploaded"); - } - }, - error: function (xhr, textStatus, errorThrown) { - var errorMsg; - try { - var json = $.parseJSON(xhr.responseText); - errorMsg = $("<a>").text(json.error).html(); - } catch (err) { - errorMsg = $("<a>").text("Error: [" + textStatus + "] " + errorThrown).html(); - } - rspamd.alertMessage("alert-error", errorMsg); + // @upload text + function uploadText(rspamd, data, source, headers) { + var url; + if (source === "spam") { + url = "learnspam"; + } else if (source === "ham") { + url = "learnham"; + } else if (source == "fuzzy") { + url = "fuzzyadd"; + } else if (source === "scan") { + url = "scan"; } - }); - } - // @upload text - function scanText(rspamd, data) { - var url = "scan"; - var items = []; - $.ajax({ - data: data, - dataType: "json", - type: "POST", - url: url, - processData: false, - jsonp: false, - beforeSend: function (xhr) { - xhr.setRequestHeader("Password", rspamd.getPassword()); - }, - success: function (input) { - var data = input; - if (data.action) { - rspamd.alertMessage("alert-success", "Data successfully scanned"); - var action = ""; - - if (data.action === "clean" || "no action") { - action = "label-success"; - } - else if (data.action === "rewrite subject" || "add header" || "probable spam") { - action = "label-warning"; - } - else if (data.action === "spam") { - action = "label-danger"; + $.ajax({ + data: data, + dataType: "json", + type: "POST", + url: url, + processData: false, + jsonp: false, + beforeSend: function (xhr) { + xhr.setRequestHeader("Password", rspamd.getPassword()); + $.each(headers, function (name, value) { + xhr.setRequestHeader(name, value); + }); + }, + success: function (data) { + cleanTextUpload(source); + if (data.success) { + rspamd.alertMessage("alert-success", "Data successfully uploaded"); } + }, + error: function (xhr, textStatus, errorThrown) { + var errorMsg; - var score = ""; - if (data.score <= data.required_score) { - score = "label-success"; + try { + var json = $.parseJSON(xhr.responseText); + errorMsg = $("<a>").text(json.error).html(); + } catch (err) { + errorMsg = $("<a>").text("Error: [" + textStatus + "] " + errorThrown).html(); } - else if (data.score >= data.required_score) { - score = "label-danger"; - } - $("<tbody id=\"tmpBody\"><tr>" + + rspamd.alertMessage("alert-error", errorMsg); + } + }); + } + // @upload text + function scanText(rspamd, data) { + var url = "scan"; + var items = []; + $.ajax({ + data: data, + dataType: "json", + type: "POST", + url: url, + processData: false, + jsonp: false, + beforeSend: function (xhr) { + xhr.setRequestHeader("Password", rspamd.getPassword()); + }, + success: function (input) { + var data = input; + if (data.action) { + rspamd.alertMessage("alert-success", "Data successfully scanned"); + var action = ""; + + if (data.action === "clean" || "no action") { + action = "label-success"; + } + else if (data.action === "rewrite subject" || "add header" || "probable spam") { + action = "label-warning"; + } + else if (data.action === "spam") { + action = "label-danger"; + } + + var score = ""; + if (data.score <= data.required_score) { + score = "label-success"; + } + else if (data.score >= data.required_score) { + score = "label-danger"; + } + $("<tbody id=\"tmpBody\"><tr>" + "<td><span class=\"label " + action + "\">" + data.action + "</span></td>" + "<td><span class=\"label " + score + "\">" + data.score.toFixed(2) + "/" + data.required_score.toFixed(2) + "</span></td>" + "</tr></tbody>") - .insertAfter("#scanOutput thead"); - var sym_desc = {}; - var nsym = 0; + .insertAfter("#scanOutput thead"); + var sym_desc = {}; + var nsym = 0; - $.each(data.symbols, function (i, item) { - if (typeof item == "object") { - var sym_id = "sym_" + nsym; - if (item.description) { - sym_desc[sym_id] = item.description; - } - items.push("<div class=\"cell-overflow\" tabindex=\"1\"><abbr id=\"" + sym_id + + $.each(data.symbols, function (i, item) { + if (typeof item == "object") { + var sym_id = "sym_" + nsym; + if (item.description) { + sym_desc[sym_id] = item.description; + } + items.push("<div class=\"cell-overflow\" tabindex=\"1\"><abbr id=\"" + sym_id + "\">" + item.name + "</abbr>: " + item.score.toFixed(2) + "</div>"); - nsym++; - } - }); - $("<td/>", { - id: "tmpSymbols", - html: items.join("") - }).appendTo("#scanResult"); - $("#tmpSymbols").insertAfter("#tmpBody td:last").removeAttr("id"); - $("#tmpBody").removeAttr("id"); - $("#scanResult").show(); - // Show tooltips - $.each(sym_desc, function (k, v) { - $("#" + k).tooltip({ - "placement": "bottom", - "title": v + nsym++; + } }); - }); - $("html, body").animate({ - scrollTop: $("#scanResult").offset().top - }, 1000); - } else { - rspamd.alertMessage("alert-error", "Cannot scan data"); - } - }, - error: function (jqXHR, textStatus, errorThrown) { - rspamd.alertMessage("alert-error", "Cannot upload data: " + - textStatus + ", " + errorThrown); - }, - statusCode: { - 404: function () { - rspamd.alertMessage("alert-error", "Cannot upload data, no server found"); + $("<td/>", { + id: "tmpSymbols", + html: items.join("") + }).appendTo("#scanResult"); + $("#tmpSymbols").insertAfter("#tmpBody td:last").removeAttr("id"); + $("#tmpBody").removeAttr("id"); + $("#scanResult").show(); + // Show tooltips + $.each(sym_desc, function (k, v) { + $("#" + k).tooltip({ + "placement": "bottom", + "title": v + }); + }); + $("html, body").animate({ + scrollTop: $("#scanResult").offset().top + }, 1000); + } else { + rspamd.alertMessage("alert-error", "Cannot scan data"); + } }, - 500: function () { - rspamd.alertMessage("alert-error", "Cannot tokenize message: no text data"); + error: function (jqXHR, textStatus, errorThrown) { + rspamd.alertMessage("alert-error", "Cannot upload data: " + + textStatus + ", " + errorThrown); }, - 503: function () { - rspamd.alertMessage("alert-error", "Cannot tokenize message: no text data"); + statusCode: { + 404: function () { + rspamd.alertMessage("alert-error", "Cannot upload data, no server found"); + }, + 500: function () { + rspamd.alertMessage("alert-error", "Cannot tokenize message: no text data"); + }, + 503: function () { + rspamd.alertMessage("alert-error", "Cannot tokenize message: no text data"); + } } - } - }); - } + }); + } - interface.setup = function(rspamd) { - $("textarea").change(function () { - if ($(this).val().length !== "") { - $(this).closest("form").find("button").removeAttr("disabled").removeClass("disabled"); - } else { - $(this).closest("form").find("button").attr("disabled").addClass("disabled"); - } - }); + interface.setup = function(rspamd) { + $("textarea").change(function () { + if ($(this).val().length !== "") { + $(this).closest("form").find("button").removeAttr("disabled").removeClass("disabled"); + } else { + $(this).closest("form").find("button").attr("disabled").addClass("disabled"); + } + }); - $("#scanClean").on("click", function () { - $("#scanTextSource").val(""); - $("#scanResult").hide(); - $("#scanOutput tbody").remove(); - $("html, body").animate({scrollTop: 0}, 1000); - return false; - }); - // @init upload - $("[data-upload]").on("click", function () { - var source = $(this).data("upload"); - var data; - var headers = {}; - data = $("#" + source + "TextSource").val(); - if (source == "fuzzy") { - //To access the proper - headers.flag = $("#fuzzyFlagText").val(); - headers.weight = $("#fuzzyWeightText").val(); - } else { + $("#scanClean").on("click", function () { + $("#scanTextSource").val(""); + $("#scanResult").hide(); + $("#scanOutput tbody").remove(); + $("html, body").animate({scrollTop: 0}, 1000); + return false; + }); + // @init upload + $("[data-upload]").on("click", function () { + var source = $(this).data("upload"); + var data; + var headers = {}; data = $("#" + source + "TextSource").val(); - } - if (data.length > 0) { - if (source == "scan") { - scanText(rspamd, data); + if (source == "fuzzy") { + //To access the proper + headers.flag = $("#fuzzyFlagText").val(); + headers.weight = $("#fuzzyWeightText").val(); } else { - uploadText(rspamd, data, source, headers); + data = $("#" + source + "TextSource").val(); } - } - return false; - }); - }; + if (data.length > 0) { + if (source == "scan") { + scanText(rspamd, data); + } else { + uploadText(rspamd, data, source, headers); + } + } + return false; + }); + }; - return interface; -}); + return interface; + }); |