mirror of
				https://github.com/nerzhul/ocsms.git
				synced 2025-10-30 18:07:36 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			78 lines
		
	
	
		
			2.3 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			78 lines
		
	
	
		
			2.3 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
| /**
 | |
|  * Nextcloud - Phone Sync
 | |
|  *
 | |
|  * This file is licensed under the Affero General Public License version 3 or
 | |
|  * later. See the COPYING file.
 | |
|  *
 | |
|  * @author Loic Blot <loic.blot@unix-experience.fr>
 | |
|  * @copyright Loic Blot 2014-2018
 | |
|  */
 | |
| 
 | |
| function inArray(val, arr) {
 | |
| 	return ($.inArray(val, arr) !== -1);
 | |
| }
 | |
| 
 | |
| function arrayUnique(arr) {
 | |
| 	return arr.filter(function (item, i, arr) {
 | |
| 		return i === arr.indexOf(item);
 | |
| 	});
 | |
| }
 | |
| 
 | |
| function toBool(str) {
 | |
| 	if (str === "true") {
 | |
| 		return true;
 | |
| 	}
 | |
| 	else if (str === "false") {
 | |
| 		return false;
 | |
| 	}
 | |
| 	return null;
 | |
| }
 | |
| 
 | |
| function escapeHTML(string) {
 | |
|                 var str = '' + string
 | |
|                 var matchHtmlRegExp = /["'&<>]/
 | |
|                 var match = matchHtmlRegExp.exec(str)
 | |
| 
 | |
|                 if (!match) {
 | |
|                         return str
 | |
|                 }
 | |
| 
 | |
|                 var escape
 | |
|                 var html = ''
 | |
|                 var index = 0
 | |
|                 var lastIndex = 0
 | |
| 
 | |
|                 for (index = match.index; index < str.length; index++) {
 | |
|                         switch (str.charCodeAt(index)) {
 | |
|                                 case 34: // "
 | |
|                                         escape = '"'
 | |
|                                         break
 | |
|                                 case 38: // &
 | |
|                                         escape = '&'
 | |
|                                         break
 | |
|                                 case 39: // '
 | |
|                                         escape = '''
 | |
|                                         break
 | |
|                                 case 60: // <
 | |
|                                         escape = '<'
 | |
|                                         break
 | |
|                                 case 62: // >
 | |
|                                         escape = '>'
 | |
|                                         break
 | |
|                                 default:
 | |
|                                         continue
 | |
|                         }
 | |
| 
 | |
|                         if (lastIndex !== index) {
 | |
|                                 html += str.substring(lastIndex, index)
 | |
|                         }
 | |
| 
 | |
|                         lastIndex = index + 1
 | |
|                         html += escape
 | |
|                 }
 | |
| 
 | |
|                 return lastIndex !== index
 | |
|                         ? html + str.substring(lastIndex, index)
 | |
|                         : html
 | |
| }
 |