Adds search on broken redirections (Closes #990).
[platal.git] / templates / search / adv.form.tpl
index 4bd8fa1..d8fc26f 100644 (file)
@@ -1,6 +1,6 @@
 {**************************************************************************}
 {*                                                                        *}
-{*  Copyright (C) 2003-2010 Polytechnique.org                             *}
+{*  Copyright (C) 2003-2011 Polytechnique.org                             *}
 {*  http://opensource.polytechnique.org/                                  *}
 {*                                                                        *}
 {*  This program is free software; you can redistribute it and/or modify  *}
 
 <h1>Recherche dans l'annuaire</h1>
 
-{javascript name=jquery.form}
+{if hasPerm('edit_directory,admin') && t($suggestAddresses)}
+<p class="center"><strong>Voulez-vous télécharger le <a href="{$globals->baseurl}/search/adv/addresses{$plset_args}">tableau des adresses postales</a> pour la recette précédente&nbsp;?</strong></p>
+{/if}
 
 <script type="text/javascript">// <!--
-  var baseurl = platal_baseurl + "search/";
+  var baseurl = $.plURL("search/");
   {literal}
-  String.prototype.htmlEntities = function () {
-    return this.replace(/&/g,'&amp;').replace(new RegExp('<','g'),'&lt;').replace(/>/g,'&gt;');
-  };
+
   // display an autocomplete row : blabla (nb of found matches)
   function make_format_autocomplete(block) {
     return function(row) {
       };
   }
 
-  // when changing country, open up region choice
+  // when changing country, open up administrativearea choice
   function changeCountry(a2) {
     $(".autocompleteTarget[name='country']").attr('value',a2);
 
     if (a2) {
       $(".autocomplete[name='countryTxt']").addClass('hidden_valid');
 
-      $("[name='region']").parent().load(baseurl + 'list/region/', { country:a2 }, function() {
-          if ($("select[name='region']").children("option").size() > 1) {
-            $("select[name='region']").attr('value', '{/literal}{$smarty.request.region}{literal}');
+      $("[name='administrativearea']").parent().load(baseurl + 'list/administrativearea/', { country:a2 }, function() {
+          if ($("select[name='administrativearea']").children("option").size() > 1) {
+            $("select[name='administrativearea']").attr('value', '{/literal}{$smarty.request.administrativearea}{literal}');
 
-            $("tr#region_ln").show();
+            $("tr#administrativearea_list").show();
           } else {
-            $("select[name='region']").attr('value', '');
+            $("select[name='administrativearea']").attr('value', '');
 
-            $("tr#region_ln").hide();
+            $("tr#administrativearea_list").hide();
           }
         });
     } else {
       $(".autocomplete[name='countryTxt']").removeClass('hidden_valid');
 
-      $("select[name='region']").attr('value', '');
+      $("select[name='administrativearea']").attr('value', '');
+      $("select[name='subadministrativearea']").attr('value', '');
 
-      $("tr#region_ln").hide();
+      $("tr#administrativearea_list").hide();
+      $("tr#subadministrativearea_list").hide();
+    }
+  }
+
+  // when changing administrativearea, open up subadministrativearea choice
+  function changeAdministrativeArea(id) {
+    if (id) {
+      $("[name='subadministrativearea']").parent().load(baseurl + 'list/subadministrativearea/', { administrativearea:id }, function() {
+          if ($("select[name='subadministrativearea']").children("option").size() > 1) {
+            $("select[name='subadministrativearea']").attr('value', '{/literal}{$smarty.request.subadministrativearea}{literal}');
+            $("tr#subadministrativearea_list").show();
+          } else {
+            $("select[name='subadministrativearea']").attr('value', '');
+            $("tr#subadministrativearea_list").hide();
+          }
+        });
+    } else {
+      $("select[name='subadministrativearea']").attr('value', '');
+      $("tr#subadministrativearea_list").hide();
     }
   }
 
       });
   }
 
+  // when checking/unchecking "only_referent", disable/enable some fields
+  function changeOnlyReferent() {
+    if ($("#only_referent").is(':checked')) {
+      $("input[name='entreprise']").attr('disabled', true);
+    } else {
+      $("input[name='entreprise']").removeAttr('disabled');
+    }
+  }
+
   // when choosing a job term in tree, hide tree and set job term field
   function searchForJobTerm(treeid, jtid, full_name) {
     $(".term_tree").remove();
       if (nameRealField == name)
         return null;
 
-      // if changing country, might want to open region choice
+      // if changing country, might want to open administrativearea choice
       if (nameRealField == 'country')
         return function(i) {
             if (i.extra[0] < 0) {
       }
     }
 
-  $(document).ready(function() {
+  $(function() {
       $(".autocompleteTarget").hide();
       $(".autocomplete").show().each(function() {
         targeted = $("../.autocompleteTarget",this)[0];
       $(".autocomplete[name='countryTxt']").change(function() { changeCountry(''); });
 
       changeCountry({/literal}'{$smarty.request.country}'{literal});
+      changeAdministrativeArea({/literal}'{$smarty.request.administrativearea}'{literal});
 
       $(".autocomplete[name='schoolTxt']").change(function() { changeSchool(''); });
 
           // to ensure that, we unset it
           $(this).parent().find('.autocompleteTarget').val('');
         });
+
+      $("#only_referent").change(function() { changeOnlyReferent(); });
+      changeOnlyReferent();
+
     });
 /** Regexps to wipe out from search queries */
 var default_form_values = [ /&woman=0(&|$)/, /&subscriber=0(&|$)/, /&alive=0(&|$)/, /&egal[12]=[^&]*&promo[12]=(&|$)/g, /&networking_type=0(&|$)/, /&[^&=]+=(&|$)/g ];
@@ -224,7 +258,7 @@ function cleanForm(f) {
     alert("Aucun critère n'a été spécifié");
     return false;
   }
-  document.location = f.action + '?' + query;
+  document.location = baseurl + 'adv?' + query;
   return false;
 }
 -->
@@ -260,7 +294,7 @@ function cleanForm(f) {
               f.egal2.value = '>=';
             }
           }
-          $(document).ready(function() { updatepromofields($('select[name=egal1]')[0]); });
+          $(function() { updatepromofields($('select[name=egal1]')[0]); });
           {/literal}
         /*]]>*/</script>
         <select name="egal1" onchange="updatepromofields(this)" style="text-align:center">
@@ -311,6 +345,27 @@ function cleanForm(f) {
       </td>
     </tr>
     <tr>
+      <td>A une redirection active</td>
+      <td>
+        <table>
+          <tr>
+            <td style="width:100px">
+              <input type="radio" name="has_email_redirect" value="0" {if !$smarty.request.has_email_redirect}checked="checked"{/if}
+                id="has_email_redirect0" /><label for="has_email_redirect0">indifférent</label>
+            </td>
+            <td style="width:100px">
+              <input type="radio" name="has_email_redirect" value="1" {if $smarty.request.has_email_redirect eq 1}checked="checked"{/if}
+                id="has_email_redirect1" /><label for="has_email_redirect1">oui</label>
+            </td>
+            <td style="width:100px">
+              <input type="radio" name="has_email_redirect" value="2" {if $smarty.request.has_email_redirect eq 2}checked="checked"{/if}
+                id="has_email_redirect2" /><label for="has_email_redirect2">non</label>
+            </td>
+          </tr>
+        </table>
+      </td>
+    </tr>
+    <tr>
       <td>En vie</td>
       <td>
         <table>
@@ -350,10 +405,16 @@ function cleanForm(f) {
         <a href="country" class="autocompleteToSelect">{icon name="table" title="Tous les pays"}</a>
       </td>
     </tr>
-    <tr id="region_ln">
-      <td>Région ou département</td>
+    <tr id="administrativearea_list">
+      <td>Région, province, état&hellip;</td>
       <td>
-        <input name="region" type="hidden" size="32" value="{$smarty.request.region}"/>
+        <input name="administrativearea" type="hidden" size="32" value="{$smarty.request.administrativearea}" />
+      </td>
+    </tr>
+    <tr id="subadministrativearea_list">
+      <td>Département, comté&hellip;</td>
+      <td>
+        <input name="subadministrativearea" type="hidden" size="32" value="{$smarty.request.subadministrativearea}" />
       </td>
     </tr>
     <tr>
@@ -373,7 +434,7 @@ function cleanForm(f) {
     </tr>
     <tr>
       <td>Description</td>
-      <td><input type="text" class="autocomplete" name="description" size="32" value="{$smarty.request.description}" /></td>
+      <td><input type="text" class="autocomplete" name="jobdescription" size="32" value="{$smarty.request.jobdescription}" /></td>
     </tr>
     <tr>
       <td>Mots-clefs</td>
@@ -483,7 +544,17 @@ function cleanForm(f) {
         </table>
       </td>
     </tr>
+        {if hasPerm('admin,edit_directory')}
+    <tr>
+      <td>Matricule AX</td>
+      <td>
+        <textarea name="schoolid_ax" rows="10" cols="12">{$smarty.request.schoolid_ax}</textarea>
+        <br />
+        <i>Entrer une liste de matricules AX (un par ligne)</i>
+      </td>
+        {/if}
         {if $smarty.session.auth ge AUTH_COOKIE}
+    </tr>
     <tr>
       <td colspan="2">
           <input type='checkbox' name='order' value='date_mod' {if $smarty.request.order eq "date_mod"}checked='checked'{/if} id="order"/>