mirror of
				https://git.tt-rss.org/fox/tt-rss.git
				synced 2025-11-04 05:41:29 +01:00 
			
		
		
		
	
		
			
				
	
	
		
			267 lines
		
	
	
		
			5.1 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			267 lines
		
	
	
		
			5.1 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
var hotkeys_enabled = true;
 | 
						|
 | 
						|
function disableHotkeys() {
 | 
						|
	hotkeys_enabled = false;
 | 
						|
}
 | 
						|
 | 
						|
function enableHotkeys() {
 | 
						|
	hotkeys_enabled = true;
 | 
						|
}
 | 
						|
 | 
						|
function xmlhttp_ready(obj) {
 | 
						|
	return obj.readyState == 4 || obj.readyState == 0 || !obj.readyState;
 | 
						|
}
 | 
						|
 | 
						|
 | 
						|
function notify_callback() {
 | 
						|
	var container = document.getElementById('notify');
 | 
						|
	if (xmlhttp.readyState == 4) {
 | 
						|
		container.innerHTML=xmlhttp.responseText;
 | 
						|
	}
 | 
						|
}
 | 
						|
 | 
						|
function rpc_notify_callback() {
 | 
						|
	var container = document.getElementById('notify');
 | 
						|
	if (xmlhttp_rpc.readyState == 4) {
 | 
						|
		container.innerHTML=xmlhttp_rpc.responseText;
 | 
						|
	}
 | 
						|
}
 | 
						|
 | 
						|
function param_escape(arg) {
 | 
						|
	if (typeof encodeURIComponent != 'undefined')
 | 
						|
		return encodeURIComponent(arg);	
 | 
						|
	else
 | 
						|
		return escape(arg);
 | 
						|
}
 | 
						|
 | 
						|
function param_unescape(arg) {
 | 
						|
	if (typeof decodeURIComponent != 'undefined')
 | 
						|
		return decodeURIComponent(arg);	
 | 
						|
	else
 | 
						|
		return unescape(arg);
 | 
						|
}
 | 
						|
 | 
						|
function delay(gap) {
 | 
						|
	var then,now; 
 | 
						|
	then=new Date().getTime();
 | 
						|
	now=then;
 | 
						|
	while((now-then)<gap) {
 | 
						|
		now=new Date().getTime();
 | 
						|
	}
 | 
						|
}
 | 
						|
 | 
						|
function p_notify(msg) {
 | 
						|
 | 
						|
	var n = parent.document.getElementById("notify");
 | 
						|
	var nb = parent.document.getElementById("notify_body");
 | 
						|
 | 
						|
	if (!n || !nb) return;
 | 
						|
 | 
						|
	nb.innerHTML = msg;
 | 
						|
 | 
						|
	if (msg.length == 0) {
 | 
						|
		n.style.display = "none";
 | 
						|
	} else {
 | 
						|
		n.style.display = "block";
 | 
						|
	}
 | 
						|
 | 
						|
}
 | 
						|
 | 
						|
function notify(msg) {
 | 
						|
 | 
						|
	var n = document.getElementById("notify");
 | 
						|
	var nb = document.getElementById("notify_body");
 | 
						|
 | 
						|
	if (!n || !nb) return;
 | 
						|
 | 
						|
	nb.innerHTML = msg;
 | 
						|
 | 
						|
	if (msg.length == 0) {
 | 
						|
		n.style.display = "none";
 | 
						|
	} else {
 | 
						|
		n.style.display = "block";
 | 
						|
	}
 | 
						|
 | 
						|
}
 | 
						|
 | 
						|
function printLockingError() {
 | 
						|
	notify("Please wait until operation finishes");}
 | 
						|
 | 
						|
var seq = "";
 | 
						|
 | 
						|
function hotkey_handler(e) {
 | 
						|
 | 
						|
	var keycode;
 | 
						|
 | 
						|
	if (!hotkeys_enabled) return;
 | 
						|
 | 
						|
	if (window.event) {
 | 
						|
		keycode = window.event.keyCode;
 | 
						|
	} else if (e) {
 | 
						|
		keycode = e.which;
 | 
						|
	}
 | 
						|
 | 
						|
	if (keycode == 13 || keycode == 27) {
 | 
						|
		seq = "";
 | 
						|
	} else {
 | 
						|
		seq = seq + "" + keycode;
 | 
						|
	}
 | 
						|
 | 
						|
	var piggie = document.getElementById("piggie");
 | 
						|
 | 
						|
	if (piggie) {
 | 
						|
 | 
						|
		if (seq.match("807371717369")) {
 | 
						|
			localPiggieFunction(true);
 | 
						|
		} else {
 | 
						|
			localPiggieFunction(false);
 | 
						|
		}
 | 
						|
	}
 | 
						|
	
 | 
						|
	if (typeof localHotkeyHandler != 'undefined') {
 | 
						|
		localHotkeyHandler(keycode);
 | 
						|
	}
 | 
						|
 | 
						|
}
 | 
						|
 | 
						|
function cleanSelectedList(element) {
 | 
						|
	var content = document.getElementById(element);
 | 
						|
 | 
						|
	for (i = 0; i < content.childNodes.length; i++) {
 | 
						|
		content.childNodes[i].className = content.childNodes[i].className.replace("Selected", "");
 | 
						|
	}
 | 
						|
 | 
						|
}
 | 
						|
 | 
						|
 | 
						|
function cleanSelected(element) {
 | 
						|
	var content = document.getElementById(element);
 | 
						|
 | 
						|
	for (i = 0; i < content.rows.length; i++) {
 | 
						|
		content.rows[i].className = content.rows[i].className.replace("Selected", "");
 | 
						|
	}
 | 
						|
 | 
						|
}
 | 
						|
 | 
						|
function getVisibleUnreadHeadlines() {
 | 
						|
	var content = document.getElementById("headlinesList");
 | 
						|
 | 
						|
	var rows = new Array();
 | 
						|
 | 
						|
	for (i = 0; i < content.rows.length; i++) {
 | 
						|
		var row_id = content.rows[i].id.replace("RROW-", "");
 | 
						|
		if (row_id.length > 0 && content.rows[i].className.match("Unread")) {
 | 
						|
				rows.push(row_id);	
 | 
						|
		}
 | 
						|
	}
 | 
						|
	return rows;
 | 
						|
}
 | 
						|
 | 
						|
function getVisibleHeadlineIds() {
 | 
						|
 | 
						|
	var content = document.getElementById("headlinesList");
 | 
						|
 | 
						|
	var rows = new Array();
 | 
						|
 | 
						|
	for (i = 0; i < content.rows.length; i++) {
 | 
						|
		var row_id = content.rows[i].id.replace("RROW-", "");
 | 
						|
		if (row_id.length > 0) {
 | 
						|
				rows.push(row_id);	
 | 
						|
		}
 | 
						|
	}
 | 
						|
	return rows;
 | 
						|
}
 | 
						|
 | 
						|
function getFirstVisibleHeadlineId() {
 | 
						|
	var rows = getVisibleHeadlineIds();
 | 
						|
	return rows[0];
 | 
						|
}
 | 
						|
 | 
						|
function getLastVisibleHeadlineId() {
 | 
						|
	var rows = getVisibleHeadlineIds();
 | 
						|
	return rows[rows.length-1];
 | 
						|
}
 | 
						|
 | 
						|
function markHeadline(id) {
 | 
						|
	var row = document.getElementById("RROW-" + id);
 | 
						|
	if (row) {
 | 
						|
		row.className = row.className + "Selected";
 | 
						|
	}
 | 
						|
}
 | 
						|
 | 
						|
function getFeedIds() {
 | 
						|
	var content = document.getElementById("feedsList");
 | 
						|
 | 
						|
	var rows = new Array();
 | 
						|
 | 
						|
	for (i = 0; i < content.rows.length; i++) {
 | 
						|
		var id = content.rows[i].id.replace("FEEDR-", "");
 | 
						|
		if (id.length > 0) {
 | 
						|
			rows.push(id);
 | 
						|
		}
 | 
						|
	}
 | 
						|
 | 
						|
	return rows;
 | 
						|
}
 | 
						|
 | 
						|
function setCookie(name, value, expires, path, domain, secure) {
 | 
						|
	document.cookie= name + "=" + escape(value) +
 | 
						|
		((expires) ? "; expires=" + expires.toGMTString() : "") +
 | 
						|
		((path) ? "; path=" + path : "") +
 | 
						|
		((domain) ? "; domain=" + domain : "") +
 | 
						|
		((secure) ? "; secure" : "");
 | 
						|
}
 | 
						|
 | 
						|
function getCookie(name) {
 | 
						|
 | 
						|
	var dc = document.cookie;
 | 
						|
	var prefix = name + "=";
 | 
						|
	var begin = dc.indexOf("; " + prefix);
 | 
						|
	if (begin == -1) {
 | 
						|
	    begin = dc.indexOf(prefix);
 | 
						|
	    if (begin != 0) return null;
 | 
						|
	}
 | 
						|
	else {
 | 
						|
	    begin += 2;
 | 
						|
	}
 | 
						|
	var end = document.cookie.indexOf(";", begin);
 | 
						|
	if (end == -1) {
 | 
						|
	    end = dc.length;
 | 
						|
	}
 | 
						|
	return unescape(dc.substring(begin + prefix.length, end));
 | 
						|
}
 | 
						|
 | 
						|
function disableContainerChildren(id, disable, doc) {
 | 
						|
 | 
						|
	if (!doc) doc = document;
 | 
						|
 | 
						|
	var container = doc.getElementById(id);
 | 
						|
 | 
						|
	for (var i = 0; i < container.childNodes.length; i++) {
 | 
						|
		var child = container.childNodes[i];
 | 
						|
 | 
						|
		child.disabled = disable;
 | 
						|
 | 
						|
		if (disable) {
 | 
						|
			if (child.className && child.className.match("button")) {
 | 
						|
				child.className = "disabledButton";
 | 
						|
			}
 | 
						|
		} else {
 | 
						|
			if (child.className && child.className.match("disabledButton")) {
 | 
						|
				child.className = "button";
 | 
						|
			}
 | 
						|
		}
 | 
						|
	}
 | 
						|
 | 
						|
}
 | 
						|
 | 
						|
function gotoPreferences() {
 | 
						|
	document.location.href = "prefs.php";
 | 
						|
}
 | 
						|
 | 
						|
function gotoMain() {
 | 
						|
	document.location.href = "tt-rss.php";
 | 
						|
}
 | 
						|
 | 
						|
 |