Mercurial > hg > extraction-interface
comparison js/taggingtext.js @ 106:6de4932d993b extractapp
bug fixed: prevent page halted bcuz the null tagging result from Regex
author | Zoe Hong <zhong@mpiwg-berlin.mpg.de> |
---|---|
date | Mon, 08 Aug 2016 17:47:19 +0200 |
parents | 2cc65ff46174 |
children | 7f2c5d542616 |
comparison
equal
deleted
inserted
replaced
105:4eb62953af99 | 106:6de4932d993b |
---|---|
985 var startPage = $('#regexPageStart').val(); | 985 var startPage = $('#regexPageStart').val(); |
986 var endPage = $('#regexPageEnd').val(); | 986 var endPage = $('#regexPageEnd').val(); |
987 var el = document.getElementById("editable-area"); | 987 var el = document.getElementById("editable-area"); |
988 var str="" + el.innerHTML; | 988 var str="" + el.innerHTML; |
989 | 989 |
990 if ( startPage == "" ) { | 990 // if there's no match || the it's a null object.. |
991 if (str.match(new RegExp(replaceSmartRegexString, "g")) == null) { | |
992 alert( "Tagged 0 entity!" ); | |
993 | |
994 } else if ( startPage == "" ) { | |
991 alert( "Tagged "+str.match(new RegExp(replaceSmartRegexString, "g")).length+" entities!" ); | 995 alert( "Tagged "+str.match(new RegExp(replaceSmartRegexString, "g")).length+" entities!" ); |
992 el.innerHTML = str.replace(new RegExp(replaceSmartRegexString, "g"), replaceSmartReplaceString); | 996 el.innerHTML = str.replace(new RegExp(replaceSmartRegexString, "g"), replaceSmartReplaceString); |
993 } else { | 997 } else { |
994 var regexText="【<a([^<>]*?)>"+startPage+"</a>】(.*?)【<a([^<>]*?)>"+endPage+"</a>】"; | 998 var regexText="【<a([^<>]*?)>"+startPage+"</a>】(.*?)【<a([^<>]*?)>"+endPage+"</a>】"; |
995 var partString = ""+str.match(new RegExp(regexText, "g")); | 999 var partString = ""+str.match(new RegExp(regexText, "g")); |
1038 var startPage = $('#regexPageStart').val(); | 1042 var startPage = $('#regexPageStart').val(); |
1039 var endPage = $('#regexPageEnd').val(); | 1043 var endPage = $('#regexPageEnd').val(); |
1040 var el = document.getElementById("editable-area"); | 1044 var el = document.getElementById("editable-area"); |
1041 var str="" + el.innerHTML; | 1045 var str="" + el.innerHTML; |
1042 | 1046 |
1043 if ( startPage == "" ) { | 1047 // if there's no match || the it's a null object.. |
1048 if (str.match(new RegExp(replaceSmartRegexString, "g")) == null) { | |
1049 alert( "Tagged 0 entity!" ); | |
1050 | |
1051 } else if ( startPage == "" ) { | |
1044 alert( "Tagged "+str.match(new RegExp(replaceSmartRegexString, "g")).length+" entities!" ); | 1052 alert( "Tagged "+str.match(new RegExp(replaceSmartRegexString, "g")).length+" entities!" ); |
1053 | |
1045 el.innerHTML = str.replace(new RegExp(replaceSmartRegexString, "g"), replaceSmartReplaceString); | 1054 el.innerHTML = str.replace(new RegExp(replaceSmartRegexString, "g"), replaceSmartReplaceString); |
1046 } else { | 1055 } else { |
1047 var regexText="【<a([^<>]*?)>"+startPage+"</a>】(.*?)【<a([^<>]*?)>"+endPage+"</a>】"; | 1056 var regexText="【<a([^<>]*?)>"+startPage+"</a>】(.*?)【<a([^<>]*?)>"+endPage+"</a>】"; |
1048 var partString = ""+str.match(new RegExp(regexText, "g")); | 1057 var partString = ""+str.match(new RegExp(regexText, "g")); |
1049 alert(partString); | 1058 alert(partString); |
1085 var startPage = $('#regexPageStart').val(); | 1094 var startPage = $('#regexPageStart').val(); |
1086 var endPage = $('#regexPageEnd').val(); | 1095 var endPage = $('#regexPageEnd').val(); |
1087 var el = document.getElementById("editable-area"); | 1096 var el = document.getElementById("editable-area"); |
1088 var str="" + el.innerHTML; | 1097 var str="" + el.innerHTML; |
1089 | 1098 |
1090 if ( startPage == "" ) { | 1099 // if there's no match || the it's a null object.. |
1100 if (str.match(new RegExp(replaceSmartRegexString, "g")) == null) { | |
1101 alert( "Tagged 0 entity!" ); | |
1102 | |
1103 } else if ( startPage == "" ) { | |
1091 alert( "Tagged "+str.match(new RegExp(replaceSmartRegexString, "g")).length+" entities!" ); | 1104 alert( "Tagged "+str.match(new RegExp(replaceSmartRegexString, "g")).length+" entities!" ); |
1092 el.innerHTML = str.replace(new RegExp(replaceSmartRegexString, "g"), replaceSmartReplaceString); | 1105 el.innerHTML = str.replace(new RegExp(replaceSmartRegexString, "g"), replaceSmartReplaceString); |
1093 } else { | 1106 } else { |
1094 var regexText="【<a([^<>]*?)>"+startPage+"</a>】(.*?)【<a([^<>]*?)>"+endPage+"</a>】"; | 1107 var regexText="【<a([^<>]*?)>"+startPage+"</a>】(.*?)【<a([^<>]*?)>"+endPage+"</a>】"; |
1095 var partString = ""+str.match(new RegExp(regexText, "g")); | 1108 var partString = ""+str.match(new RegExp(regexText, "g")); |
1132 } | 1145 } |
1133 today = hour+'_'+minute+'_'+dd+'_'+mm+'_'+yyyy; | 1146 today = hour+'_'+minute+'_'+dd+'_'+mm+'_'+yyyy; |
1134 | 1147 |
1135 var name=prompt("Please enter this Regex name", RegexLoadedName+"_"+today); | 1148 var name=prompt("Please enter this Regex name", RegexLoadedName+"_"+today); |
1136 | 1149 |
1150 | |
1151 | |
1137 if (name!=null && name != ''){ | 1152 if (name!=null && name != ''){ |
1153 | |
1154 // the name not allowed to contain " ", "(", ")" | |
1155 if (name.indexOf(' ') >= 0 || name.indexOf('(') >= 0 || name.indexOf(')') >= 0) { | |
1156 | |
1157 alert("Save Regex Failed.\nPlease don't use space or '(' or ')' in the name. Consider to use '-' or '_' instead. "); | |
1158 return; | |
1159 } | |
1160 | |
1138 $.ajax({ | 1161 $.ajax({ |
1139 type : 'POST', | 1162 type : 'POST', |
1140 url : './TaggingText', | 1163 url : './TaggingText', |
1141 async : false, | 1164 async : false, |
1142 data : 'func=SmartRegexSave'+'&text='+encodeURIComponent($('#smartRegexShowDiv').html())+'&filename='+name+'&topic_id='+topic_id, | 1165 data : 'func=SmartRegexSave'+'&text='+encodeURIComponent($('#smartRegexShowDiv').html())+'&filename='+name+'&topic_id='+topic_id, |