Remove ValidateIterator, replaced by Validate::iterate().
[platal.git] / modules / admin.php
index c8b57bc..e1e2ceb 100644 (file)
@@ -1010,13 +1010,13 @@ class AdminModule extends PLModule
     {
         $page->changeTpl('admin/validation.tpl');
         $page->setTitle('Administration - Valider une demande');
-                $page->addCssLink('nl.css');
+        $page->addCssLink('nl.css');
         $page->addJsLink('ajax.js');
-        require_once("validations.inc.php");
 
-
-        if ($action == 'edit' and !is_null($id)) {
+        if ($action == 'edit' && !is_null($id)) {
             $page->assign('preview_id', $id);
+        } else {
+            $page->assign('preview_id', null);
         }
 
         if(Env::has('uid') && Env::has('type') && Env::has('stamp')) {
@@ -1060,7 +1060,7 @@ class AdminModule extends PLModule
         // where several copies of the site use the same DB, but not the same "dynamic configuration"
         global $globals;
         $globals->updateNbValid();
-        $page->assign('vit', new ValidateIterator());
+        $page->assign('vit', Validate::iterate());
     }
 
     function handler_validate_answers(&$page, $action = 'list', $id = null)
@@ -1151,9 +1151,10 @@ class AdminModule extends PLModule
             S::assert_xsrf_token();
             $firstname = Post::t('firstname');
             $lastname = strtoupper(Post::t('lastname'));
-            $sex = Post::b('sex') ? User::GENDER_FEMALE : User::GENDER_FEMALE;
+            $sex = Post::b('sex') ? User::GENDER_FEMALE : User::GENDER_MALE;
             $email = Post::t('email');
-            $login = PlUser::makeHrid($firstname, $lastname, 'ax');
+            $type = Post::s('type');
+            $login = PlUser::makeHrid($firstname, $lastname, $type);
             if (!isvalid_email($email)) {
                 $page->trigError("Invalid email address: $email");
             } else if (strlen(Post::s('pwhash')) != 40) {
@@ -1164,14 +1165,14 @@ class AdminModule extends PLModule
                 XDB::execute("INSERT INTO  accounts (hruid, type, state, password,
                                                      registration_date, email, full_name,
                                                      display_name, sex, directory_name)
-                                   VALUES  ({?}, 'ax', 'active', {?}, NOW(), {?}, {?}, {?}, {?}, {?})",
-                             $login, Post::s('pwhash'), $email, $full_name, $full_name, $sex,
+                                   VALUES  ({?}, {?}, 'active', {?}, NOW(), {?}, {?}, {?}, {?}, {?})",
+                             $login, $type, Post::s('pwhash'), $email, $full_name, $full_name, $sex,
                              $directory_name);
             }
         }
 
-        $uf = new UserFilter(new UFC_AccountType('ax'));
-        $page->assign('users', $uf->iterUsers(new PlLimit(10)));
+        $uf = new UserFilter(new UFC_AccountType('ax', 'school', 'fx'));
+        $page->assign('users', $uf->iterUsers());
 
     }
 
@@ -1397,9 +1398,9 @@ class AdminModule extends PLModule
         $page->changeTpl('admin/jobs.tpl');
 
         if (Env::has('search')) {
-            $res = XDB::query("SELECT  e.id, e.name, e.acronym
-                                 FROM  profile_job_enum AS e
-                                WHERE  e.name LIKE CONCAT('% ', {?}, '%') OR e.acronym LIKE CONCAT('% ', {?}, '%')",
+            $res = XDB::query("SELECT  id, name, acronym
+                                 FROM  profile_job_enum
+                                WHERE  name LIKE CONCAT('%', {?}, '%') OR acronym LIKE CONCAT('%', {?}, '%')",
                               Env::t('job'), Env::t('job'));
 
             if ($res->numRows() <= 20) {
@@ -1413,16 +1414,11 @@ class AdminModule extends PLModule
         }
 
         if (Env::has('edit')) {
-            // TODO: use address class to update profile_job_enum once it is done.
-
             S::assert_xsrf_token();
             $selectedJob = Env::has('selectedJob');
 
             Phone::deletePhones(0, Phone::LINK_COMPANY, $id);
-            XDB::execute("DELETE FROM  profile_addresses
-                                WHERE  jobid = {?} AND type = 'hq'",
-                         $id);
-
+            Address::delete(null, Address::LINK_COMPANY, $id);
             if (Env::has('change')) {
                 XDB::execute('UPDATE  profile_job
                                  SET  jobid = {?}
@@ -1434,15 +1430,6 @@ class AdminModule extends PLModule
 
                 $page->trigSuccess("L'entreprise a bien été remplacée.");
             } else {
-                require_once 'geocoding.inc.php';
-
-                $gmapsGeocoder = new GMapsGeocoder();
-                $address = array('text' => Env::t('address'));
-                $address = $gmapsGeocoder->getGeocodedAddress($address);
-                Geocoder::getAreaId($address, 'administrativeArea');
-                Geocoder::getAreaId($address, 'subAdministrativeArea');
-                Geocoder::getAreaId($address, 'locality');
-
                 XDB::execute('UPDATE  profile_job_enum
                                  SET  name = {?}, acronym = {?}, url = {?}, email = {?},
                                       NAF_code = {?}, AX_code = {?}, holdingid = {?}
@@ -1454,22 +1441,10 @@ class AdminModule extends PLModule
                                          'link_type' => Phone::LINK_COMPANY, 'pub' => 'public'));
                 $fax = new Phone(array('display' => Env::v('fax'), 'link_id' => $id, 'id' => 1, 'type' => 'fax',
                                          'link_type' => Phone::LINK_COMPANY, 'pub' => 'public'));
+                $address = new Address(array('jobid' => $jobid, 'type' => Address::LINK_COMPANY, 'text' => Env::t('address')));
                 $phone->save();
                 $fax->save();
-
-                XDB::execute("INSERT INTO  profile_addresses (jobid, type, id, accuracy,
-                                                              text, postalText, postalCode, localityId,
-                                                              subAdministrativeAreaId, administrativeAreaId,
-                                                              countryId, latitude, longitude,
-                                                              north, south, east, west)
-                                   VALUES  ({?}, 'hq', 0, {?}, {?}, {?}, {?}, {?}, {?}, {?}, {?},
-                                            {?}, {?}, {?}, {?}, {?}, {?})",
-                             $id, $address['accuracy'], $address['text'], $address['postalText'],
-                             $address['postalCode'], $address['localityId'],
-                             $address['subAdministrativeAreaId'], $address['administrativeAreaId'],
-                             $address['countryId'], $address['latitude'], $address['longitude'],
-                             $address['north'], $address['south'],
-                             $address['east'], $address['west']);
+                $address->save();
 
                 $page->trigSuccess("L'entreprise a bien été mise à jour.");
             }