inutile de verifier la ville : elle vient direct de geoloc
[platal.git] / include / profil / assign_adresses.inc.php
index 72be3d2..9a9912e 100644 (file)
@@ -1,6 +1,6 @@
 <?php
 /***************************************************************************
- *  Copyright (C) 2003-2004 Polytechnique.org                              *
+ *  Copyright (C) 2003-2006 Polytechnique.org                              *
  *  http://opensource.polytechnique.org/                                   *
  *                                                                         *
  *  This program is free software; you can redistribute it and/or modify   *
  *  59 Temple Place, Suite 330, Boston, MA  02111-1307  USA                *
  ***************************************************************************/
 
+global $adresses;
+
+//on génère une éventuelle nouvelle adresse
+if (!isset($adresses) || (count($adresses) < $nb_adr_max)){
+  $adrid = generate_new_adrid();
+  $adresses[$adrid]['adrid'] = $adrid;
+  $adr = &$adresses[$adrid];
+  $adr['adr1'] = '';
+  $adr['adr2'] = '';
+  $adr['adr3'] = '';
+  $adr['postcode'] = '';
+  $adr['city'] = '';
+  $adr['country'] = '00';
+  $adr['region'] = '';
+  $adr['secondaire'] = 1;
+  $adr['courrier'] = 0;
+  $adr['active'] = 0;
+  $adr['temporaire'] = 1;
+  $adr['pub'] = 'private';
+  $adr['nouvelle'] = 'new'; //n'est pas issue d'un formulaire (sert dans update_adresses...)
+}
+
+unset($adr);
+unset($adrid);
+
+reset($adresses);
+//on génère un éventuel nouveau tel pour chaque adresse
+foreach($adresses as $adrid => $adr){
+  if (!isset($adr['tels'])) {
+    $adresses[$adrid]['tels'] = array(
+      array('tel' => '', 'tel_pub' => 'private', 'tel_type' => 'Tél.', 'telid' => 0, 'new_tel' => true),
+      array('tel' => '', 'tel_pub' => 'private', 'tel_type' => 'Fax', 'telid' => 1, 'new_tel' => true));
+  } elseif (count($adr['tels']) < $nb_tel_max) {
+    $adresses[$adrid]['tels'][] = 
+      array('tel' => '', 'tel_pub' => 'private', 'tel_type' => 'Autre', 'telid' => generate_new_telid($adr), 'new_tel' => true);
+  }
+}
+
+unset($adr);
+unset($adrid);
+
+//tri des adresses :
+
+reset($adresses);
+$i = 1;
+foreach($adresses as $adrid_ => $adr_){
+  if(($adresses[$adrid_]['active']) && ($adr_['nouvelle'] != 'new')){
+    $ordre_des_adrid[$i] = $adrid_;
+    $i++;
+    $est_attribuee[$adrid_] = 1;
+  }
+  else
+    $est_attribuee[$adrid_] = 0;
+}
+
+reset($adresses);
+foreach($adresses as $adrid_ => $adr_){
+  if(($adresses[$adrid_]['secondaire'] == 0) && ($est_attribuee[$adrid_] == 0) && ($adr_['nouvelle'] != 'new')){ // principale et non attribuee
+    $ordre_des_adrid[$i] = $adrid_;
+    $i++;
+    $est_attribuee[$adrid_] = 1;
+  }
+}
+
+reset($adresses);
+foreach($adresses as $adrid_ => $adr_){
+  if(($adresses[$adrid_]['temporaire'] == 0) && ($est_attribuee[$adrid_] == 0) && ($adr_['nouvelle'] != 'new')){ // permanente et non attribuee
+    $ordre_des_adrid[$i] = $adrid_;
+    $i++;
+    $est_attribuee[$adrid_] = 1;
+  }
+}
+reset($adresses);
+foreach($adresses as $adrid_ => $adr_){
+  if($est_attribuee[$adrid_] == 0){ // non attribuee
+     $ordre_des_adrid[$i] = $adrid_;
+     $i++;
+     $est_attribuee[$adrid_] = 1;
+  }
+}
+
+$nb_adr = $i - 1;
+$page->assign_by_ref('ordre_adrid',$ordre_des_adrid);
+$page->assign('nb_adr',$nb_adr+1);
+
 $page->assign('adresses', $adresses);
 
 ?>