Slower Ajax notification & typo
[platal.git] / htdocs / javascript / xorg.js
index 902a58b..7fcd6f0 100644 (file)
@@ -1,5 +1,5 @@
 /***************************************************************************
- *  Copyright (C) 2003-2004 Polytechnique.org                              *
+ *  Copyright (C) 2003-2007 Polytechnique.org                              *
  *  http://opensource.polytechnique.org/                                   *
  *                                                                         *
  *  This program is free software; you can redistribute it and/or modify   *
@@ -35,13 +35,43 @@ function getNow() {
     
     time   = (mi < 10) ? hr +':0'+mi : hr+':'+mi;
     days   = ['Dimanche', 'Lundi', 'Mardi', 'Mercredi', 'Jeudi', 'Vendredi', 'Samedi'];
-    months = ['janvier', 'février', 'mars', 'avril', 'mai', 'juin', 'juillet',
-           'août', 'septembre', 'octobre', 'novembre', 'décembre']
+    months = ['janvier', 'février', 'mars', 'avril', 'mai', 'juin', 'juillet',
+           'août', 'septembre', 'octobre', 'novembre', 'décembre']
 
     return days[dy]+' '+wd+' '+months[mh]+' '+yr+'<br />'+time;
 }
 
 // }}}
+// {{{ Search Engine
+
+function canAddSearchEngine()
+{
+  if (((typeof window.sidebar == "object") && (typeof window.sidebar.addSearchEngine == "function"))
+      || ((typeof window.sidebar == "object") && (typeof window.sidebar.addSearchEngine == "function"))) {
+      return true;
+  }
+  return false;
+}
+
+function addSearchEngine()
+{
+  var searchURI = "http://www.polytechnique.org/xorg.opensearch.xml";
+  if ((typeof window.sidebar == "object") && (typeof window.sidebar.addSearchEngine == "function")) {
+    window.sidebar.addSearchEngine(
+      searchURI,
+      "http://www.polytechnique.org/images/xorg.png",
+      "Annuaire Polytechnique.org",
+      "Academic");
+  } else {
+    try {
+        window.external.AddSearchProvider(searchURI);
+    } catch(e) {
+        alert("Impossible d'installer la barre de recherche"); 
+    }
+  }
+}
+
+// }}}
 // {{{ Events
 
 function eventClosure(obj, methodName) {
@@ -59,7 +89,39 @@ function attachEvent(obj, evt, f, useCapture) {
         return true;
     } else if (obj.attachEvent) {
         return obj.attachEvent("on"+evt, f);
+    } 
+    return false;
+}
+
+// }}}
+// {{{ dynpost()
+
+function dynpost(action, values)
+{
+    var body = document.getElementsByTagName('body')[0];
+
+    var form = document.createElement('form');
+    form.action = action;
+    form.method = 'post';
+
+    body.appendChild(form);
+
+    for (var k in values) {
+        var input = document.createElement('input');
+        input.type = 'hidden';
+        input.name = k;
+        input.value = values[k];
+        form.appendChild(input);
     }
+
+    form.submit();
+}
+
+function dynpostkv(action, k, v)
+{
+    var dict = {};
+    dict[k] = v;
+    dynpost(action, dict);
 }
 
 // }}}
@@ -89,8 +151,11 @@ function auto_links() {
            node.onclick = function () { window.open(this.href); return false; };
        }
        if(node.className == 'popup2') {
-           node.onclick = function () { popWin(this,840,600); return false; };
+        node.onclick = function () { popWin(this,840,600); return false; };
        }
+    if(node.className == 'popup3') {
+        node.onclick = function () { popWin(this, 640, 800); return false; };
+    }
        if(matches = (/^popup_([0-9]*)x([0-9]*)$/).exec(node.className)) {
            var w = matches[1], h = matches[2];
            node.onclick = function () { popWin(this,w,h); return false; };
@@ -106,7 +171,10 @@ function auto_links() {
 
 // {{{ function pa_onload
 
-attachEvent(window, 'load', auto_links);
+if (!attachEvent(window, 'load', auto_links)) {
+    window.onload = auto_links;
+}
 
 // }}}
 
+// vim:set et sw=4 sts=4 sws=4 foldmethod=marker enc=utf-8: