summaryrefslogtreecommitdiffstats
path: root/lib/javascript/base.js
diff options
context:
space:
mode:
Diffstat (limited to 'lib/javascript/base.js')
-rw-r--r--lib/javascript/base.js104
1 files changed, 104 insertions, 0 deletions
diff --git a/lib/javascript/base.js b/lib/javascript/base.js
new file mode 100644
index 00000000..feb07b58
--- /dev/null
+++ b/lib/javascript/base.js
@@ -0,0 +1,104 @@
+//
+// Copyright (c) Ampache.org
+// All rights reserved.
+//
+// This program is free software; you can redistribute it and/or
+// modify it under the terms of the GNU General Public License v2
+// as published by the Free Software Foundation.
+//
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+//
+// You should have received a copy of the GNU General Public License
+// along with this program; if not, write to the Free Software
+// Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+//
+
+// flipField
+// Toggles the disabled property on the specifed field
+function flipField(field) {
+ if ($(field).disabled == false) {
+ $(field).disabled = true;
+ }
+ else {
+ $(field).disabled = false;
+}
+} // flipField
+
+// updateText
+// Changes the specified elements innards. Used for the catalog mojo fluff.
+function updateText(field, value) {
+ $(field).innerHTML = value;
+} // updateText
+
+// toggleVisible
+// Toggles display type between block and none. Used for ajax loading div.
+function toggleVisible(element) {
+
+ if ($(element).style.display == 'block') {
+ $(element).style.display = 'none';
+ }
+ else {
+ $(element).style.display = 'block';
+}
+} // toggleVisible
+
+// delayRun
+// This function delays the run of another function by X milliseconds
+function delayRun(element, time, method, page, source) {
+
+ var function_string = method + '(\'' + page + '\',\'' + source + '\')';
+
+ var action = function () { eval(function_string); };
+
+ if (element.zid) {
+ clearTimeout(element.zid);
+ }
+
+ element.zid = setTimeout(action,time);
+
+} // delayRun
+
+// reloadUtil
+// Reload our util frame
+// IE issue fixed by Spocky, we have to use the iframe for Democratic Play &
+// Localplay, which don't actually prompt for a new file
+function reloadUtil(target) {
+
+ if (navigator.appName == 'Opera') {
+ $('util_iframe').contentWindow.location.reload(true);
+ }
+ else if (navigator.appName == 'Konqueror') {
+ $('util_iframe').contentDocument.location.reload(true);
+ }
+ else {
+ $('util_iframe').src = $('util_iframe').src;
+}
+} // reloadUtil
+
+// reloadRedirect
+// Send them elsewhere
+function reloadRedirect(target) {
+ window.location = target;
+} // reloadRedirect
+
+// popupWindow
+// Loads the specified URL in a new window. Used for art.
+function popupWindow(url) {
+ var newWindow = window.open(url, "ampache_art", "menubar=no,toolbar=no,location=no,directories=no");
+ if (window.focus) { newWindow.focus(); }
+} // popupWindow
+
+// This is kind of ugly. Let's not mess with it too much.
+function check_inline_song_edit(type, song) {
+ var target = type + '_select_' + song;
+ if ($(target).options[$(target).selectedIndex].value == -1) {
+ $(target).innerHTML = '<input type="textbox" name="' + type + '_name" value="New ' + type + '" />';
+ } else {
+ $(target).innerHTML = '';
+ }
+}
+