JSFiddle - React, Tailwind, and code Playground
by abude
HTML
<input type="submit" value="File Bug" onclick="return checkDuplicateMessage()" name="submit">
JavaScript
var firstMessage;
$(document).ready(function() {
firstMessage = $('[name=body],[name=bug_body],[name=message]').val();
});
function checkDuplicateMessage () {
secondMessage = $('[name=body],[name=bug_body],[name=message]').val();
if (firstMessage == "" || firstMessage === null || secondMessage === null || typeof firstMessage === 'undefined' || typeof secondMessage === 'undefined') {
return 0;
}
firstMessage += '';
secondMessage += '';
var pos1 = 0,
pos2 = 0,
max = 0,
firstLength = firstMessage.length,
secondLength = secondMessage.length,
p, q, l, sum;
max = 0;
for (p = 0; p < firstLength; p++) {
for (q = 0; q < secondLength; q++) {
for (l = 0;
(p + l < firstLength) && (q + l < secondLength) && (firstMessage.charAt(p + l) === secondMessage.charAt(q + l)); l++);
if (l > max) {
max = l;
pos1 = p;
pos2 = q;
}
}
}
sum = max;
if (sum) {
if (pos1 && pos2) {
sum += this.similar_text(firstMessage.substr(0, pos2), secondMessage.substr(0, pos2));
}
if ((pos1 + max < firstLength) && (pos2 + max < secondLength)) {
sum += this.similar_text(firstMessage.substr(pos1 + max, firstLength - pos1 - max), secondMessage.substr(pos2 + max, secondLength - pos2 - max));
}
}
for(sum=0;sum<=1; sum++){
var yes=confirm('Are you sure you want to send a duplicate message');
if (yes)
return true ;
else
return false ;
}
return sum;
}