Remove ajax.js.
authorFlorent Bruneau <florent.bruneau@polytechnique.org>
Sat, 6 Nov 2010 22:44:51 +0000 (23:44 +0100)
committerRaphaël Barrois <raphael.barrois@polytechnique.org>
Sat, 29 Jan 2011 19:38:08 +0000 (20:38 +0100)
A large part of ajax.js has been integrated as an extension of jQuery
($([selector]).updateHtml(), ...).

Signed-off-by: Florent Bruneau <florent.bruneau@polytechnique.org>
32 files changed:
htdocs/javascript/ajax.js [deleted file]
htdocs/javascript/igoogle.js
htdocs/javascript/profile.js
htdocs/javascript/xorg.js
modules/admin.php
modules/email.php
modules/events.php
modules/lists.php
modules/profile.php
modules/search.php
modules/xnetgrp.php
templates/admin/user.tpl
templates/emails/alias.tpl
templates/emails/antispam.tpl
templates/emails/index.tpl
templates/emails/redirect.tpl
templates/emails/send.tpl
templates/events/form.tpl
templates/events/index.tpl
templates/gadgets/ig-skin.tpl
templates/include/tips.tpl
templates/lists/index.tpl
templates/lists/liste.inc.tpl
templates/profile/fiche_referent.tpl
templates/reminder/base.tpl
templates/reminder/gapps.tpl
templates/reminder/ml.tpl
templates/reminder/profile_update.tpl
templates/search/referent.tpl
templates/xnetevents/edit.tpl
templates/xnetgrp/edit.tpl
templates/xnetgrp/membres-add.tpl

diff --git a/htdocs/javascript/ajax.js b/htdocs/javascript/ajax.js
deleted file mode 100644 (file)
index 95ee31f..0000000
+++ /dev/null
@@ -1,115 +0,0 @@
-/***************************************************************************
- *  Copyright (C) 2003-2010 Polytechnique.org                              *
- *  http://opensource.polytechnique.org/                                   *
- *                                                                         *
- *  This program is free software; you can redistribute it and/or modify   *
- *  it under the terms of the GNU General Public License as published by   *
- *  the Free Software Foundation; either version 2 of the License, or      *
- *  (at your option) any later version.                                    *
- *                                                                         *
- *  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                *
- ***************************************************************************/
-
-function AjaxEngine()
-{
-    this.update_html = function(obj, src, func)
-    {
-        $.get(src,
-            function(data, textStatus) {
-                if (textStatus == "success") {
-                    if (obj) {
-                        $('#' + obj).html(data);
-                    }
-                    if (func) {
-                        func(data);
-                    }
-                } else if (textStatus == "error") {
-                    alert("Une erreur s'est produite lors du traitement de la requête.\n"
-                         +"Ta session a peut-être expirée.");
-                }
-            }, 'text');
-        return false;
-    }
-}
-
-var Ajax = new AjaxEngine();
-
-var currentTempMessage = 0;
-function setOpacity(obj, opacity)
-{
-  opacity = (opacity == 100)?99:opacity;
-  // IE
-  obj.style.filter = "alpha(opacity:"+opacity+")";
-  // Safari < 1.2, Konqueror
-  obj.style.KHTMLOpacity = opacity/100;
-  // Old Mozilla
-  obj.style.MozOpacity = opacity/100;
-  // Safari >= 1.2, Firefox and Mozilla, CSS3
-  obj.style.opacity = opacity/100
-}
-
-function _showTempMessage(id, state, back)
-{
-    var obj = document.getElementById(id);
-    if (currentTempMessage != state) {
-        return;
-    }
-    setOpacity(obj, back * 4);
-    if (back > 0) {
-        setTimeout("_showTempMessage('" + id + "', " + currentTempMessage + "," + (back-1) + ")", 125);
-    } else {
-        obj.innerHTML = "";
-    }
-}
-
-function showTempMessage(id, message, success)
-{
-    var obj = document.getElementById(id);
-    obj.innerHTML = (success ? "<img src='images/icons/wand.gif' alt='' /> "
-                             : "<img src='images/icons/error.gif' alt='' /> ") + message;
-    obj.style.fontWeight = "bold";
-    obj.style.color = (success ? "green" : "red");;
-    currentTempMessage++;
-    setOpacity(obj, 100);
-    setTimeout("_showTempMessage('" + id + "', " + currentTempMessage + ", 25)", 1000);
-}
-
-function previewWiki(idFrom, idTo, withTitle, idShow)
-{
-    var text = document.getElementById(idFrom).value;
-    if (text == "") {
-        return false;
-    }
-    var url  = "wiki_preview";
-    if (!withTitle) {
-        url += "/notitle";
-    }
-    $.post(url, { text: text },
-        function(data) {
-            $("#" + idTo).html(data);
-        },
-        'text');
-    if (idShow != null) {
-        document.getElementById(idShow).style.display = "";
-    }
-}
-
-function sendTestEmail(token, hruid)
-{
-    Ajax.update_html(null, 'emails/test' + (hruid == null ? '' : '/' + hruid) + '?token=' + token,
-                     function() {
-                        showTempMessage('mail_sent', "Un email a été envoyé avec succès"
-                                        + (hruid == null ? " sur ton adresse." : " sur l'adresse de " + hruid),
-                                        true); });
-    return false;
-}
-
-// vim:set et sw=4 sts=4 sws=4 foldmethod=marker enc=utf-8:
index b59adc1..67889c7 100644 (file)
@@ -30,7 +30,7 @@ function markEventAsRead(event_id)
     _toggle(_gel("mark-read-" + event_id));
     _gel("evt-" + event_id).setAttribute("class", "read");
     _gel("link-" + event_id).setAttribute("href", "events/unread/" + event_id);
-    Ajax.update_html(null, "events/read/" + event_id);
+    $.xget("events/read/" + event_id, 'text');
     return false;
 }
 
index a173e4b..d5106b0 100644 (file)
@@ -77,10 +77,12 @@ function addSearchName(isFemale)
     while ($('#search_name_' + i).length != 0) {
         i++;
     }
-    Ajax.update_html('search_name_' + i, 'profile/ajax/searchname/' + i + '/' + isFemale, function(data){
-        $('#searchname').before(data);
-        changeNameFlag(i);
-    });
+    $('#search_name_' + i)
+        .updateHtml('profile/ajax/searchname/' + i + '/' + isFemale,
+                    function(data) {
+                        $('#searchname').before(data);
+                        changeNameFlag(i);
+                    });
 }
 
 function removeSearchName(i, isFemale)
@@ -117,11 +119,12 @@ function updateNameDisplay(isFemale)
             searchnames += $('#search_name_' + i).find(':text').val() + ';;';
         }
     }
-    Ajax.update_html(null, 'profile/ajax/buildnames/' + searchnames + '/' + isFemale, function(data){
-        var name = data.split(';');
-        $('#public_name').html(name[0]);
-        $('#private_name').html(name[0] + name[1]);
-    });
+    $.xget('profile/ajax/buildnames/' + searchnames + '/' + isFemale, 'text',
+           function(data){
+               var name = data.split(';');
+               $('#public_name').html(name[0]);
+               $('#private_name').html(name[0] + name[1]);
+           });
 }
 
 function toggleParticle(id)
@@ -321,7 +324,8 @@ function addAddress()
         i++;
     }
     $('#add_address').before('<div id="addresses_' + i + '_cont"></div>');
-    Ajax.update_html('addresses_' + i + '_cont', 'profile/ajax/address/' + i, checkCurrentAddress());
+    $('#addresses_' + i + '_cont').updateHtml('profile/ajax/address/' + i,
+                                              checkCurrentAddress());
 }
 
 function addressChanged(prefid)
@@ -353,7 +357,7 @@ function addTel(prefid, prefname, subField, mainField, mainId)
         i++;
     }
     $('#' + prefix + 'add').before('<div id="' + prefix + i + '" style="clear: both; padding-top: 4px; padding-bottom: 4px"></div>');
-    Ajax.update_html(prefix + i, 'profile/ajax/tel/' + prefid + '/' + prefname + '/' + i + '/' + subField + '/' + mainField + '/' + mainId);
+    $('#' + prefix + i).updateHtml('profile/ajax/tel/' + prefid + '/' + prefname + '/' + i + '/' + subField + '/' + mainField + '/' + mainId);
 }
 
 function removeTel(prefname, prefid, id)
index 532e696..d804403 100644 (file)
@@ -258,7 +258,6 @@ function auto_links() {
 
 // }}}
 
-
 /***************************************************************************
  * Password check
  */
@@ -359,6 +358,108 @@ function checkPassword(box, okLabel) {
 }
 
 // }}}
+// {{{ jQuery object extension
+
+(function($) {
+    $.xget = function(source, type, onSuccess, onError) {
+        function ajaxHandler(data, textStatus) {
+            if (textStatus == 'success') {
+                if (onSuccess) {
+                    onSuccess(data);
+                }
+            } else if (textStatus == 'error') {
+                if (onError) {
+                    onError(data);
+                } else {
+                    alert("Une error s'est produite lors du traitement de la requête.\n"
+                        + "Ta session a peut-être expiré");
+                }
+            }
+        }
+        $.get(source, ajaxHandler, type);
+        return false;
+    }
+
+    $.fn.tmpMessage = function(message, success) {
+        if (success) {
+            this.html("<img src='images/icons/wand.gif' alt='' /> " + message)
+                .css('color', 'green');
+        } else {
+            this.html("<img src='images/icons/error.gif' alt='' /> " + message)
+                .css('color', 'red');
+        }
+        return this.css('fontWeight', 'bold')
+                   .show()
+                   .delay(1000)
+                   .fadeOut(500);
+    }
+
+    $.fn.updateHtml = function(source, callback) {
+        var elements = this;
+        function handler(data) {
+            elements.html(data);
+            if (callback) {
+                callback(data);
+            }
+        }
+        $.xget(source, 'text', handler);
+        return this;
+    }
+
+    $.fn.successMessage = function(source, message) {
+        var elements = this;
+        $.xget(source, 'text', function() {
+            elements.tmpMessage(message, true);
+        });
+        return this;
+    }
+
+    $.fn.wiki = function(text, withTitle) {
+        if (text == '') {
+            return this.html('');
+        }
+        var url = 'wiki_preview';
+        if (!withTitle) {
+            url += '/notitile';
+        }
+        var $this = this;
+        $.post(url, { text: text },
+               function (data) {
+                   $this.html(data);
+               }, 'text');
+        return this;
+    }
+})(jQuery);
+
+// }}}
+// {{{ preview wiki
+
+function previewWiki(idFrom, idTo, withTitle, idShow)
+{
+    $('#' + idTo).wiki($('#' + idFrom).val(), withTitle);
+    if (idShow != null) {
+        $('#' + idShow).show();
+    }
+}
+
+// }}}
+// {{{ send test email
+
+function sendTestEmail(token, hruid)
+{
+    var url = 'emails/test';
+    var msg = "Un email a été envoyé avec succès";
+    if (hruid != null) {
+        url += '/' + hruid;
+        msg += " sur l'adresse de " + hruid + ".";
+    } else {
+        msg += " sur ton addresse.";
+    }
+    $('#mail_sent').successMessage($url + '?token=' + token, msg);
+    return false;
+}
+
+// }}}
 
 
 /***************************************************************************
index ccfc0e7..78080aa 100644 (file)
@@ -1076,7 +1076,6 @@ class AdminModule extends PLModule
         $page->changeTpl('admin/validation.tpl');
         $page->setTitle('Administration - Valider une demande');
         $page->addCssLink('nl.css');
-        $page->addJsLink('ajax.js');
 
         if ($action == 'edit' && !is_null($id)) {
             $page->assign('preview_id', $id);
index b97b6c9..47771e2 100644 (file)
@@ -370,7 +370,6 @@ class EmailModule extends PLModule
     function handler_send(&$page)
     {
         $page->changeTpl('emails/send.tpl');
-        $page->addJsLink('ajax.js');
 
         $page->setTitle('Envoyer un email');
 
index 9f434cb..f6b2c9d 100644 (file)
@@ -103,7 +103,6 @@ class EventsModule extends PLModule
     function handler_ev(&$page, $action = 'list', $eid = null, $pound = null)
     {
         $page->changeTpl('events/index.tpl');
-        $page->addJsLink('ajax.js');
 
         $user = S::user();
 
@@ -255,7 +254,6 @@ class EventsModule extends PLModule
     function handler_ev_submit(&$page)
     {
         $page->changeTpl('events/submit.tpl');
-        $page->addJsLink('ajax.js');
 
         $wp = new PlWikiPage('Xorg.Annonce');
         $wp->buildCache();
@@ -333,7 +331,6 @@ class EventsModule extends PLModule
     function handler_admin_events(&$page, $action = 'list', $eid = null)
     {
         $page->changeTpl('events/admin.tpl');
-        $page->addJsLink('ajax.js');
         $page->setTitle('Administration - Evenements');
         $page->register_modifier('hde', 'html_entity_decode');
 
index 2ed4836..ffa1973 100644 (file)
@@ -91,7 +91,6 @@ class ListsModule extends PLModule
         $domain = $this->prepare_client($page);
 
         $page->changeTpl('lists/index.tpl');
-        $page->addJsLink('ajax.js');
         $page->setTitle('Listes de diffusion');
 
 
index e94a38d..9c44204 100644 (file)
@@ -330,7 +330,6 @@ class ProfileModule extends PLModule
         }
 
         // Build the page
-        $page->addJsLink('ajax.js');
         $page->addJsLink('education.js', false); /* dynamic content */
         $page->addJsLink('grades.js', false);    /* dynamic content */
         $page->addJsLink('profile.js');
index 86ccc55..1848e70 100644 (file)
@@ -66,7 +66,6 @@ class SearchModule extends PLModule
                 $page->changeTpl('search/index.tpl');
                 $page->setTitle('Annuaire');
                 $page->assign('formulaire', 1);
-                $page->addJsLink('ajax.js');
                 return;
             }
 
@@ -140,7 +139,6 @@ class SearchModule extends PLModule
             }
         } else {
             $page->assign('formulaire',1);
-            $page->addJsLink('ajax.js');
         }
 
         $page->changeTpl('search/index.tpl');
@@ -201,7 +199,6 @@ class SearchModule extends PLModule
         }
 
         $page->changeTpl('search/index.tpl', $model == 'mini' ? SIMPLE : SKINNED);
-        $page->addJsLink('ajax.js');
         $page->assign('public_directory',0);
     }
 
index 48e0ce8..c18718e 100644 (file)
@@ -252,7 +252,6 @@ class XnetGrpModule extends PLModule
         $mmlist = new MMList(S::user(), $globals->asso('mail_domain'));
         $page->assign('listes', $mmlist->get_lists());
         $page->assign('user', S::user());
-        $page->addJsLink('ajax.js');
 
         if (Post::has('send')) {
             S::assert_xsrf_token();
@@ -627,7 +626,6 @@ class XnetGrpModule extends PLModule
         global $globals;
 
         $page->changeTpl('xnetgrp/membres-add.tpl');
-        $page->addJsLink('ajax.js');
 
         if (is_null($email)) {
             return;
index 9e6e91d..6a27fd4 100644 (file)
@@ -464,7 +464,6 @@ $(document).ready(function() {
   </table>
 </form>
 
-{javascript name="ajax"}
 {test_email hruid=$user->login()}
 
 <h1>Autres adresses de l'utilisateur</h1>
index 14e6cf6..2760d6a 100644 (file)
   </h1>
 
 {if $actuel}
-  {javascript name=ajax}
   {if $user->hasProfile()}
   <table class="flags">
     <tr>
       <td class="orange">
         <input type="checkbox" {if $mail_public}checked="checked"{/if}
-            onclick="
-                Ajax.update_html(null,'{$globals->baseurl}/emails/alias/set/'+(this.checked?'public':'private')+'?token={xsrf_token}');
-                document.getElementById('mail_public').innerHTML = (this.checked?'public et apparaît donc sur ta fiche':'privé et n\'apparaît nulle part sur le site') + '.';
+            onclick="$.xget('{$globals->baseurl}/emails/alias/set/'+(this.checked?'public':'private')+'?token={xsrf_token}');
+                $('#mail_public').html((this.checked?'public et apparaît donc sur ta fiche':'privé et n\'apparaît nulle part sur le site') + '.');
             " />
       </td>
       <td>
index 12d1cdd..16fabfb 100644 (file)
 
 {include wiki=Xorg.Antispam part=1}
 
-{javascript name=ajax}
 <script type="text/javascript">//<![CDATA[
   {literal}
-  function bogoUpdated()
-  {
-    showTempMessage('bogo-msg', "Le changement de réglage de l'antispam a bien été effectué.", true);
-  }
+  $(document).ready(function() {
+      var url = '{/literal}{$globals->baseurl}/emails/antispam/{literal}';
+      var msg = "Le changement de réglage de l'antispam a bien été effectué.";
+      $(':radio[name=statut_filtre]').change(function() {
+          $("#bogo-msg").successMessage(url + $(this).val(), msg);
+      });
+  });
   {/literal}
 //]]></script>
   <fieldset>
     <legend><strong>Choisis ton propre réglage&nbsp;:</strong></legend>
-    <input id='s0' type='radio' name='statut_filtre' value='0' {if $filtre eq 0}checked="checked"{/if} onclick="Ajax.update_html(null, '{$globals->baseurl}/emails/antispam/'+this.value, bogoUpdated)" />
+    <input id='s0' type='radio' name='statut_filtre' value='0' {if $filtre eq 0}checked="checked"{/if} />
     <label for='s0'>(1) le filtre anti-spam n'agit pas sur tes emails</label>
     <br />
-    <input id='s1' type='radio' name='statut_filtre' value='1' {if $filtre eq 1}checked="checked"{/if} onclick="Ajax.update_html(null, '{$globals->baseurl}/emails/antispam/'+this.value, bogoUpdated)" />
+    <input id='s1' type='radio' name='statut_filtre' value='1' {if $filtre eq 1}checked="checked"{/if} />
     <label for='s1'>(2) le filtre anti-spam marque les emails</label>
     <br />
-    <input id='s2' type='radio' name='statut_filtre' value='2' {if $filtre eq 2}checked="checked"{/if} onclick="Ajax.update_html(null, '{$globals->baseurl}/emails/antispam/'+this.value, bogoUpdated)" />
+    <input id='s2' type='radio' name='statut_filtre' value='2' {if $filtre eq 2}checked="checked"{/if} />
     <label for='s2'>(3) le filtre anti-spam marque les emails, et élimine les spams avec des notes les plus hautes</label>
     <br />
-    <input id='s3' type='radio' name='statut_filtre' value='3' {if $filtre eq 3}checked="checked"{/if} onclick="Ajax.update_html(null, '{$globals->baseurl}/emails/antispam/'+this.value, bogoUpdated)" />
+    <input id='s3' type='radio' name='statut_filtre' value='3' {if $filtre eq 3}checked="checked"{/if} />
     <label for='s3'>(4) le filtre anti-spam élimine les emails détectés comme spams</label>
   </fieldset>
 
index 8146bfe..97a5c23 100644 (file)
 
 <h1>Gestion de mes emails</h1>
 
-{javascript name=ajax}
 {literal}
 <script type="text/javascript">
-  function bestaliasUpdated() {
-    showTempMessage('bestalias-msg', "Le changement a bien été effectué.", true);
-  }
+  //<![CDATA[
+  $(document).ready(function() {
+      var url = '{/literal}{$globals->baseurl}/emails/best/{literal}';
+      var tok = '{/literal}{xsrf_token}{literal}';
+      var msg = "Le changement a bien été effectué.";
+      $(':radio[name=best]').change(function() {
+          $("#bestalias-msg").successMessage(url + $(this).val() + '?token=' + tok, msg);
+      });
+  });
+  //]]>
 </script>
 {/literal}
 
@@ -38,7 +44,7 @@
     Tes adresses polytechniciennes sont&nbsp;:<br />
     <div>
       {iterate from=$aliases item=a}
-      <label><input type='radio' {if $a.best}checked="checked"{/if} name='best' value='{$a.alias}' onclick='Ajax.update_html(null,"{$globals->baseurl}/emails/best/{$a.alias}?token={xsrf_token}",bestaliasUpdated)' />
+      <label><input type='radio' {if $a.best}checked="checked"{/if} name='best' value='{$a.alias}' />
       {if $a.a_vie}(**){/if}{if $a.cent_ans}(*){/if} <strong>{$a.alias}</strong>@{#globals.mail.domain#} et
       @{#globals.mail.domain2#}</label>
       {if $a.expire}<span class='erreur'>(expire le {$a.expire|date_format})</span>{/if}
index a56e173..c2cbc08 100644 (file)
@@ -56,7 +56,6 @@
     <a href="Xorg/SMTPSecurise">service d'envoi d'email SMTP sécurisé</a>.
   </p>
 
-  {javascript name=ajax}
   <script type="text/javascript">//<![CDATA[
     {literal}
     function activeEnable()
@@ -73,7 +72,7 @@
 
     function redirectUpdate()
     {
-        showTempMessage('redirect-msg', "Tes redirections ont été mises à jour.", true);
+        $('#redirect-msg').tmpMessage("Tes redirections ont été mises à jour.", true);
         activeEnable();
     }
 
     function updateRedirect(checked, email)
     {
         activeEnable();
-        Ajax.update_html(null, 'emails/redirect/' + (checked ? '' : 'in') + 'active/' + email, redirectUpdate);
+        $.xget('emails/redirect/' + (checked ? '' : 'in') + 'active/' + email,
+               'text', redirectUpdate);
     }
 
     function rewriteUpdate(mail, allow, box)
                  onchange="updateRedirect(this.checked, '{$e->email}')" /></td>
         <td style="text-align: left">
           {if $e->has_rewrite()}
-          <select onchange="Ajax.update_html(null,'emails/redirect/rewrite/{$e->email}/'+this.value, rewriteUpdate('{$e->email}', {$e->allow_rewrite|default:"0"}, this))">
+          <select onchange="$.get('emails/redirect/rewrite/{$e->email}/'+this.value, 'text',  rewriteUpdate('{$e->email}', {$e->allow_rewrite|default:"0"}, this)); return false">
             <option value=''>--- aucune ---</option>
             {assign var=dom1 value=#globals.mail.domain#}
             {assign var=dom2 value=#globals.mail.domain2#}
index a0d501a..f637339 100644 (file)
       {literal}
       function removeAttachments()
       {
-          Ajax.update_html(null, 'emails/send', null);
-          document.getElementById('att_already').style.display = 'none';
-          document.getElementById('att_form').style.display = '';
+          $.xget('email/send');
+          $('#att_already').hide();
+          $('#att_form').show();
       }
       {/literal}
     //]]></script>
index a1e1dc5..e8df5f0 100644 (file)
@@ -62,7 +62,7 @@
       page = "{$globals->baseurl}/" + page;
       {literal}
     }
-    Ajax.update_html('preview', page, null);
+    $('#preview').updateHtml(page);
     return false;
   }
   {/literal}
index afb4ba9..06b936e 100644 (file)
@@ -118,7 +118,7 @@ Bienvenue {$smarty.session.user->displayName()}{if t($birthday)}
        if (link.childNodes[i].nodeName == 'STRONG') {
                link.replaceChild(link.childNodes[i].firstChild,link.childNodes[i]);
        }
-       Ajax.update_html(null, 'events/read/'+id);
+    $.xget('events/read/'+id);
        return false;
   }
   -->
index e5b8f3e..f644f03 100644 (file)
@@ -26,7 +26,6 @@
     <link rel="stylesheet" type="text/css" href="css/igoogle.css" media="all"/>
     <script type="text/javascript">var platal_baseurl = "{$globals->baseurl}/";</script>
     {javascript name=jquery}
-    {javascript name=ajax}
     {javascript name=xorg}
     {javascript name=igoogle}
   </head>
index efcc665..8e06ae6 100644 (file)
@@ -40,7 +40,7 @@
   {/tidy}
   {if !t($nochange)}
   <div class="right">
-    <a href="events" onclick="Ajax.update_html('tod', 'ajax/tips/{$tips.id}'); return false" style="text-decoration: none">
+    <a href="events" onclick="$('#tod').updateHtml('ajax/tips/{$tips.id}'); return false" style="text-decoration: none">
       Astuce suivante {icon name=resultset_next title="Astuce suivante"}
     </a>
   </div>
index 6c7fddb..37a8b87 100644 (file)
 {*                                                                        *}
 {**************************************************************************}
 
+<script type="text/javascript">
+  //<![CDATA[
+  {literal}
+  function updateHtml(id, url)
+  {
+      if (is_IE) {
+          return true;
+      } else {
+          $('#' + id).updateHtml(url);
+          return false;
+      }
+  }
+  {/literal}
+  //]]>
+</script>
+
 <h1>
   Listes de diffusion de Polytechnique.org
 </h1>
index 575f8a6..8a709be 100644 (file)
@@ -38,7 +38,7 @@
   <strong>&bull; Demandes d'inscription</strong><br />
   {foreach from=$liste.subscriptions item=s}
     <a href='{$platal->ns}lists/moderate/{$liste.list}?sadd={$s.id}&amp;token={xsrf_token}'
-        onclick="return (is_IE || Ajax.update_html('list_{$liste.list}', '{$platal->ns}lists/ajax/{$liste.list}?sadd={$s.id}&amp;token={xsrf_token}'));">
+        onclick="return updateHtml('list_{$liste.list}', '{$platal->ns}lists/ajax/{$liste.list}?sadd={$s.id}&amp;token={xsrf_token}');">
       {icon name=add title="Accepter"}
     </a>
     <a href='{$platal->ns}lists/moderate/{$liste.list}?sid={$s.id}'>
   <span class="smaller">
   {foreach from=$liste.mails item=m}
     <a href='{$platal->ns}lists/moderate/{$liste.list}?mid={$m.id}&amp;mok=1&amp;token={xsrf_token}'
-        onclick="return (is_IE || Ajax.update_html('list_{$liste.list}', '{$platal->ns}lists/ajax/{$liste.list}?mid={$m.id}&amp;mok=1&amp;token={xsrf_token}'));">
+        onclick="return updateHtml('list_{$liste.list}', '{$platal->ns}lists/ajax/{$liste.list}?mid={$m.id}&amp;mok=1&amp;token={xsrf_token}');">
       {icon name=add title="Valider l'email"}
     </a>
     <a href='{$platal->ns}lists/moderate/{$liste.list}?mid={$m.id}&amp;mdel=1&amp;token={xsrf_token}'
-        onclick="return (is_IE || Ajax.update_html('list_{$liste.list}', '{$platal->ns}lists/ajax/{$liste.list}?mid={$m.id}&amp;mdel=1&amp;token={xsrf_token}'));">
+        onclick="return updateHtml('list_{$liste.list}', '{$platal->ns}lists/ajax/{$liste.list}?mid={$m.id}&amp;mdel=1&amp;token={xsrf_token}');">
       {icon name=delete title="Spam"}
     </a>
     De&nbsp;: {$m.sender}<br />
 <td class='right'>
   {if $liste.sub eq 2}
   <a href='{$platal->ns}lists?del={$liste.list}&amp;token={xsrf_token}'
-      onclick="return (is_IE || Ajax.update_html('list_{$liste.list}', '{$platal->ns}lists/ajax/{$liste.list}?unsubscribe=1&amp;token={xsrf_token}'));">
+      onclick="return updateHtml('list_{$liste.list}', '{$platal->ns}lists/ajax/{$liste.list}?unsubscribe=1&amp;token={xsrf_token}');">
     {icon name=cross title="me désinscrire"}
   </a>
   {elseif $liste.sub eq 1}
   {icon name=flag_orange title='inscription en attente de modération'}
   {else}
   <a href='{$platal->ns}lists?add={$liste.list}&amp;token={xsrf_token}'
-      onclick="return (is_IE || Ajax.update_html('list_{$liste.list}', '{$platal->ns}lists/ajax/{$liste.list}?subscribe=1&amp;token={xsrf_token}'));">
+      onclick="return updateHtml('list_{$liste.list}', '{$platal->ns}lists/ajax/{$liste.list}?subscribe=1&amp;token={xsrf_token}');">
     {icon name=add title="m'inscrire"}
   </a>
   {/if}
index a35e521..737332c 100644 (file)
@@ -20,7 +20,6 @@
 {*                                                                        *}
 {**************************************************************************}
 
-{javascript name=ajax}
 {assign var=terms value=$profile->getMentoringTerms()}
 {assign var=countries value=$profile->getMentoringCountries()}
 <div id="fiche">
index a7a5277..31b93de 100644 (file)
         {$reminder->text()}
       </div>
       <div class="center">
-        <a href="reminder/yes" onclick="Ajax.update_html('reminder', '{$reminder->baseurl()}/yes'); return false" style="text-decoration: none">
+        <a href="reminder/yes" onclick="$('#reminder').updateHtml('{$reminder->baseurl()}/yes'); return false" style="text-decoration: none">
           {icon name=add} M'inscrire
         </a> -
-        <a href="reminder/no" onclick="Ajax.update_html('reminder', '{$reminder->baseurl()}/no'); return false" style="text-decoration: none">
+        <a href="reminder/no" onclick="$('#reminder').updateHtml('{$reminder->baseurl()}/no'); return false" style="text-decoration: none">
           {icon name=delete} Ne pas m'inscrire
         </a> -
-        <a href="reminder/later" onclick="Ajax.update_html('reminder', '{$reminder->baseurl()}/dismiss'); return false" style="text-decoration: none">
+        <a href="reminder/later" onclick="$('#reminder').updateHtml('{$reminder->baseurl()}/dismiss'); return false" style="text-decoration: none">
           {icon name=cross} Décider plus tard
         </a>
         {if $reminder->info()}
index 7304234..0ce784c 100644 (file)
   <a href="{$reminder->baseurl()}/yes" style="text-decoration: none">
     {icon name=add} M'inscrire
   </a> -
-  <a href="reminder/no" onclick="Ajax.update_html('reminder', '{$reminder->baseurl()}/no'); return false" style="text-decoration: none">
+  <a href="reminder/no" onclick="$('#reminder').updateHtml('{$reminder->baseurl()}/no'); return false" style="text-decoration: none">
     {icon name=delete} Ne pas m'inscrire
   </a> -
-  <a href="reminder/later" onclick="Ajax.update_html('reminder', '{$reminder->baseurl()}/dismiss'); return false" style="text-decoration: none">
+  <a href="reminder/later" onclick="$('#reminder').updateHtml('{$reminder->baseurl()}/dismiss'); return false" style="text-decoration: none">
     {icon name=cross} Décider plus tard
   </a> -
   <a class="popup2" style="text-decoration: none" href="Xorg/GoogleApps">{icon name=information} En savoir plus</a>
index e53b7d8..a576a24 100644 (file)
 
   <div class="center">
     <input type="submit" value="M'inscrire aux listes" /> -
-    <a href="reminder/no" onclick="Ajax.update_html('reminder', '{$reminder->baseurl()}/no'); return false" style="text-decoration: none">
+    <a href="reminder/no" onclick="$('#reminder').updateHtml('{$reminder->baseurl()}/no'); return false" style="text-decoration: none">
       {icon name=delete} Ne pas m'inscrire
     </a> -
-    <a href="reminder/later" onclick="Ajax.update_html('reminder', '{$reminder->baseurl()}/dismiss'); return false" style="text-decoration: none">
+    <a href="reminder/later" onclick="$('#reminder').updateHtml('{$reminder->baseurl()}/dismiss'); return false" style="text-decoration: none">
       {icon name=cross} Décider plus tard
     </a>
   </div>
index 55bf9db..f5ebef8 100644 (file)
@@ -51,7 +51,7 @@
 {/if}
 
 <div class="right">
-  <a href="reminder/later" onclick="Ajax.update_html('reminder', '{$reminder->baseurl()}/dismiss'); return false" style="text-decoration: none">
+  <a href="reminder/later" onclick="$('#reminder').updateHtml('{$reminder->baseurl()}/dismiss'); return false" style="text-decoration: none">
     {icon name=cross} Mettre à jour plus tard
   </a>
 </div>
index ab57b71..d7a5839 100644 (file)
 Actuellement, {$mentors_number} mentors et référents se sont déclarés sur {#globals.core.sitename#}.
 </p>
 
-{javascript name=ajax}
 {javascript name=jquery.jstree}
 {javascript name=jobtermstree}
 <script type="text/javascript">//<![CDATA[
 
 var baseurl = platal_baseurl + "referent/";
 {literal}
-var Ajax2 = new AjaxEngine();
 
 /** Hides or display tree of all job terms */
 function toggleJobTermsTree()
index 6816e40..909470b 100644 (file)
@@ -167,7 +167,6 @@ function deadlineChange(box)
           <li>&lt;salutation&gt;, &lt;prenom&gt;, &lt;nom&gt;, &lt;montant&gt; et &lt;comment&gt; seront <strong>automatiquement</strong> remplacés par les informations adaptées.</li>
           <li><a href="wiki_help" class="popup3">{icon name=information} Tu peux utiliser une syntaxe wiki pour formatter ton texte.</a></li>
         </ul>
-        {javascript name=ajax}
         <div id="pay_preview" style="display: none">
           <strong>Aperçu du texte&nbsp;:</strong>
           <hr />
index ffd10e6..dabde07 100644 (file)
   </div>
 
   <div class="center">
-    {javascript name=ajax}
     <div id="preview_descr" style="display: none; text-align: justify"></div>
     <br />
     <a href="wiki_help" class="popup3">
index 05b9b09..a991da7 100644 (file)
@@ -29,8 +29,8 @@ function xStateChange(box)
     document.getElementById('xprenom').style.display = state;
     document.getElementById('xpromo').style.display = state;
     document.getElementById('xsearch').style.display = state;
-    Ajax.update_html('search_result',
-      '{/literal}{$platal->ns}{literal}member/new/ajax?login=' + document.getElementById('email').value);
+    $('#search_result').updateHtml('{/literal}{$platal->ns}{literal}member/new/ajax?login='
+                                  + $('#email').val());
 }
 
 var nom;
@@ -46,8 +46,7 @@ function searchX()
     var nom = document.getElementById('nom').value;
     var prenom = document.getElementById('prenom').value;
     var promo = document.getElementById('promo').value;
-    Ajax.update_html('search_result',
-      '{/literal}{$platal->ns}{literal}member/new/ajax?prenom=' + prenom + '&nom=' + nom + '&promo=' + promo);
+    $('#search_result').updateHtml('{/literal}{$platal->ns}{literal}member/new/ajax?prenom=' + prenom + '&nom=' + nom + '&promo=' + promo);
 }
 {/literal}
 //]]></script>