]> _ Git - cubeextranet.git/commitdiff
(no commit message)
authorvincent@cubedesigners.com <vincent@cubedesigners.com@f5622870-0f3c-0410-866d-9cb505b7a8ef>
Wed, 12 Jan 2011 09:25:03 +0000 (09:25 +0000)
committervincent@cubedesigners.com <vincent@cubedesigners.com@f5622870-0f3c-0410-866d-9cb505b7a8ef>
Wed, 12 Jan 2011 09:25:03 +0000 (09:25 +0000)
importWs.php
inc/extranet/Controlleur/class.extranet.core.php
inc/extranet/Controlleur/class.extranet.url.php
inc/extranet/DAO/class.extranet.dao.utilisateur.php
inc/ws/Metier/class.ws.lang.php
inc/ws/Metier/class.ws.parametres.php
typo/extranet/desc.xml

index 58dc13a60ec7d756c6b1be20f565c32c337807a5..99ffd3d93e26ad0b3dd8f5199f7a751fc18ba8da 100644 (file)
@@ -2,13 +2,13 @@
 include('inc/prepend.php');\r
 \r
 try {\r
-       cubePHP::neverStop();\r
+       set_time_limit(0);\r
 \r
        $utilisateurs = true;\r
        $documents = false;\r
        $books = false;\r
        $themes = true;\r
-       $langues = false;\r
+       $langues = true;\r
 \r
        if ($utilisateurs) {\r
                $books = true;\r
@@ -19,13 +19,13 @@ try {
 \r
        $grades = array(0 => 1, 0.4 => 1, '0.4' => 1, 0.5 => 1, '0.5' => 1, 1 => 1, 2 => 2, 3 => 3, 4 => 5);\r
 \r
-       $tables = array('books', 'book_pages', 'dashboard', 'devis', 'documents', 'entreprises', 'factures', 'icones', 'langues', 'projets', 'signatures', 'taches', 'themes', 'timereport', 'utilisateurs', 'themes_droits');\r
+       $tables = array('books', 'book_pages', 'dashboard', 'devis', 'documents', 'entreprises', 'factures', 'icones', 'langues', 'projets', 'signatures', 'taches', 'themes', 'timereport', 'utilisateurs'/*, 'themes_droits'*/);\r
        foreach($tables as $t) {\r
                $core->con->execute('ALTER TABLE ' . $t . ' DISABLE KEYS');\r
        }\r
 \r
        if ($themes) {\r
-               $core->con->execute('TRUNCATE TABLE themes_droits');\r
+               // $core->con->execute('TRUNCATE TABLE themes_droits');\r
                $core->con->execute('TRUNCATE TABLE themes');\r
                $core->con->execute('TRUNCATE TABLE icones');\r
                $core->con->execute('TRUNCATE TABLE signatures');\r
@@ -44,8 +44,9 @@ try {
        }\r
 \r
        if ($utilisateurs) {\r
-               $core->con->execute('DELETE FROM entreprises WHERE entreprise_id>242 AND entreprise_id<7');\r
                $core->con->execute('DELETE FROM utilisateurs WHERE utilisateur_id>278');\r
+               $core->con->execute('DELETE FROM entreprises WHERE entreprise_id>242');\r
+               $core->con->execute('UPDATE entreprises SET ws_grade=0, ws_admin=1');\r
        }\r
 \r
        if ($utilisateurs) {\r
@@ -62,6 +63,10 @@ try {
                }\r
 \r
                $utilisateurs_entreprises = array();\r
+               $r = $core->con->select('SELECT entreprise,utilisateur_id FROM utilisateurs');\r
+               while ($r->fetch()) {\r
+                       $utilisateurs_entreprises[$r->utilisateur_id] = $r->entreprise;\r
+               }\r
 \r
                $entreprise_id++;\r
                // Obtient les emails des utilisateurs\r
@@ -74,38 +79,47 @@ try {
                }\r
                $utilisateur_id++;\r
                // Importe les entreprises et utilisateurs du WS dont les membres n'ont pas été reliés à l'extranet\r
-               $r = $core->con->select('SELECT * FROM ws.user WHERE extranet=0 AND (uid IN (SELECT uid FROM ws.book) OR grade>=3)  ORDER BY date');\r
+               $r = $core->con->select('SELECT * FROM ws.user WHERE extranet=0 AND (uid IN (SELECT uid FROM ws.book) OR grade>=3)  ORDER BY rs');\r
                $ws2ext = array();\r
                while ($r->fetch()) {\r
                        // On s'occupe de l'entreprise\r
-                       if (trim($r->rs) == '') {\r
-                               $r->rs = trim($r->prenom . ' ' . $r->nom);\r
+                       $email = trim(mb_strtolower($r->email));\r
+\r
+                       $rs = trim($r->rs);\r
+                       if ($rs == '') {\r
+                               $rs = trim($r->prenom . ' ' . $r->nom);\r
                        }\r
-                       $nom = mb_strtolower(trim($r->rs));\r
+                       $nom = mb_strtolower($rs);\r
 \r
                        $nom = cubeText::str2URL($nom);\r
-                       $email = trim(mb_strtolower($r->email));\r
-                       if (isset($entreprises[$nom])) {\r
+\r
+                       if (isset($utilisateurs[$email])) {\r
+                               $newid = $utilisateurs[$email];\r
+                               $e = $utilisateurs_entreprises[$newid];\r
+                               $update = true;\r
+                       } elseif (isset($entreprises[$nom])) {\r
                                $e = $entreprises[$nom];\r
+                               $update = true;\r
                        } else {\r
                                $c = $core->con->openCursor('entreprises');\r
                                $c->entreprise_id = $entreprise_id;\r
-                               $c->nom = $r->rs;\r
+                               $c->nom = $rs;\r
                                $c->adresse = $r->adresse;\r
                                $c->code_postal = $r->code_postal;\r
                                $c->ville = $r->ville;\r
                                $c->pays = $r->pays;\r
                                $c->date_creation = $r->date;\r
                                $c->ws_grade = $grades[$r->grade];\r
-                               try {\r
-                                       $c->insert();\r
-                               }\r
-                               catch(Exception $e) {\r
-                                       fb($entreprises);\r
-                               }\r
+                               $c->insert();\r
                                $e = $entreprises[$nom] = $entreprise_id;\r
-\r
                                $entreprise_id++;\r
+                               $update = false;\r
+                       }\r
+\r
+                       if ($update) {\r
+                               $c = $core->con->openCursor('entreprises');\r
+                               $c->ws_grade = $grades[$r->grade];\r
+                               $c->update('WHERE entreprise_id=\'' . $e . '\'');\r
                        }\r
                        // Puis de l'utilisateur\r
                        if (isset($utilisateurs[$email])) {\r
@@ -127,8 +141,10 @@ try {
                                $c->code_postal = $r->code_postal;\r
                                $c->ville = $r->ville;\r
                                $c->pays = $r->pays;\r
+                               $c->lang = $r->lang;\r
                                $c->telephone = $r->telephone;\r
                                $c->date_creation = $r->date;\r
+                               $c->notes = 'Inséré à la migration du Fluidbook Workshop';\r
                                $c->ws_password = $r->password;\r
                                $c->ws_id = $r->uid;\r
                                $c->insert();\r
@@ -164,7 +180,7 @@ try {
                        }\r
 \r
                        if (!isset($ws2ext[$r->admin])) {\r
-                               $ws2ext[$r->admin] = 5;\r
+                               $ws2ext[$r->admin] = 1;\r
                        }\r
                        $c = $core->con->openCursor('entreprises');\r
                        $c->ws_admin = $ws2ext[$r->admin];\r
@@ -179,6 +195,8 @@ try {
                }\r
        }\r
 \r
+       exit;\r
+\r
        if ($themes) {\r
                // Importe les signatures\r
                $r = $core->con->select('SELECT * FROM ws.signature');\r
@@ -207,7 +225,6 @@ try {
                while ($r->fetch()) {\r
                        $c = $core->con->openCursor('themes');\r
                        $c->theme_id = $r->tid;\r
-\r
                        $c->proprietaire = getWsUser($r->proprietaire);\r
                        $c->date = $r->date;\r
                        $c->nom = $r->titre;\r
@@ -234,6 +251,7 @@ try {
        }\r
        if ($langues) {\r
                // Importe les langues\r
+               $allTrads = array();\r
                $trad = array();\r
                $r = $core->con->select('SELECT * FROM ws.lang_trad,ws.lang_ord WHERE lang_trad.idlt=lang_ord.idlt');\r
                while ($r->fetch()) {\r
@@ -246,12 +264,21 @@ try {
 \r
                $r = $core->con->select('SELECT * FROM ws.lang');\r
                while ($r->fetch()) {\r
+                       $idl = getLangCode($r->idl);\r
                        ksort($trad[$idl]);\r
-                       $textes = new wsLangueTextes();\r
-                       $textes->textes = $trad[$idl];\r
+\r
+                       $traductions = wsLang::getTraductionWithId($trad[$idl]);\r
+                       $allTrads[$idl] = $traductions;\r
+\r
+                       if (strlen($idl) > 2) {\r
+                               continue;\r
+                       }\r
+\r
                        $c = $core->con->openCursor('langues');\r
-                       $c->lang_id = $r->idl;\r
-                       $c->traductions = json_encode(getLangCode($r->idl));\r
+                       $c->lang_id = $idl;\r
+                       $c->charset = 'Latin1';\r
+                       $c->font = 'Fluidbook.otf';\r
+                       $c->traductions = json_encode($traductions);\r
                        $c->insert();\r
                }\r
        }\r
@@ -269,8 +296,8 @@ try {
                        $c->date = $r->date;\r
                        $c->insert();\r
                        // TODO Copie des fichiers\r
-                       /*$docs[$r->did] = true;\r
-               if (!file_exists(dirname(__FILE__) . '/docs/' . $r->did)) {\r
+                       $docs[$r->did] = true;\r
+                       /*if (!file_exists(dirname(__FILE__) . '/docs/' . $r->did)) {\r
                        mkdir(dirname(__FILE__) . '/docs/' . $r->did, 0777, true);\r
                }*/\r
                }\r
@@ -294,17 +321,22 @@ try {
                        $c = $core->con->openCursor('books');\r
                        $c->book_id = $r->bid;\r
                        $c->nom = $r->titre;\r
-                       $c->lang = $r->lang;\r
+                       $c->lang = substr(getLangCode($r->lang), 0, 2);\r
                        $c->theme = $r->tid;\r
+                       if (strlen($r->lang) > 2) {\r
+                               $c->traductions = json_encode($allTrads[$r->lang]);\r
+                       } else {\r
+                               $c->traductions = '';\r
+                       }\r
                        $books_proprietaires[$r->bid] = $c->proprietaire = getWsUser($r->uid);\r
                        $c->status = $r->status;\r
                        $c->date_status = $r->date_status;\r
                        $c->hash = $r->code;\r
                        $c->compteur_visites = 20;\r
                        $c->date = $r->date;\r
-                       $parametres = new wsBookParametres();\r
+                       $parametres = new wsBookParametres(new stdClass());\r
+                       $r->signature = $signatures[$r->tid];\r
                        $parametres->fromRecord($r);\r
-                       $parametres->signature = $signatures[$r->tid];\r
                        $parametres->fromXML(simplexml_load_string('<extras>' . $r->extras . '</extras>'));\r
                        $c->parametres = serialize($parametres);\r
                        $c->insert();\r
@@ -334,6 +366,7 @@ try {
        }\r
 }\r
 catch(Exception $e) {\r
+       print_r($e);\r
        fb($e);\r
 }\r
 \r
index 19c8052f79a652153699ff945b613a114a15b025..7eb31a97980dceda915185c011a25f9be9604789 100644 (file)
@@ -302,7 +302,7 @@ class extranetCore extends cubeCore {
                // Table des langues\r
                $db->langues->lang_id('varchar', 20, false);\r
                $db->langues->font('varchar', 64, false);\r
-               $db->langues->charset('text', 0, false);\r
+               $db->langues->charset('varchar', 64, false);\r
                $db->langues->traductions('text', 0, false);\r
                // Clés\r
                $db->langues->primary('pk_langues', 'lang_id');\r
index 4f26dc9faa59f1e49b86186e12fa0611132db8fa..53cbf6a5c5a54686285a01c863f1a9557cc782c5 100644 (file)
@@ -302,7 +302,7 @@ class extranetUrl {
                if ($entreprise_id == 'new' || !$client->ws_admin) {\r
                        $class = 'empty-field';\r
                        $default_id = '';\r
-                       $default = __('Entrez le nom du projet ou du client');\r
+                       $default = __('Entrez le nom du revendeur ou de l\'administrateur');\r
                } else {\r
                        $class = '';\r
                        $default_id = $client->ws_admin;\r
index 131aee84f65ace9c1a009189f74540dec86ed093..0b6322c2157374857fdc6fb6e6989b0b972e548b 100644 (file)
@@ -156,6 +156,8 @@ class extranetDAOUtilisateur extends extranetDAO {
        {\r
                $where = 'nom LIKE \'' . $this->con->escape($q) . '%\' OR ';\r
                $where .= 'prenom LIKE \'' . $this->con->escape($q) . '%\' OR ';\r
+               $where .= 'CONCAT(prenom,\' \',nom) LIKE \'' . $this->con->escape($q) . '%\' OR ';\r
+               $where .= 'CONCAT(nom,\' \',prenom) LIKE \'' . $this->con->escape($q) . '%\' OR ';\r
                if ($search_entreprise) {\r
                        $where .= 'entreprise IN(SELECT entreprise_id FROM entreprises WHERE nom LIKE \'%' . $this->con->escape($q) . '%\') OR ';\r
                }\r
index 6c97af6616de36e1056b835293211534a7548a8f..efb8f7c3412f7667f8c7dda92943e18af121c74c 100644 (file)
@@ -82,7 +82,7 @@ class wsLang extends cubeMetier {
        public static function checkTranslations($traductions)\r
        {\r
                foreach($traductions as $k => $v) {\r
-                       if (is_int($k)) {\r
+                       if (is_int($k) || intval($k)>0) {\r
                                $traductions = wsLang::getTraductionWithId($traductions);\r
                        }\r
                        break;\r
index 1267868daf2cd849e96f3c5b998c0a249cb379e8..8073e2eacc81b65b66737e70847e5cd0ab9c2766 100644 (file)
@@ -132,7 +132,6 @@ class wsParametres extends cubeMetier implements Iterator {
                                $value = (string)$value;\r
                                break;\r
                } // switch\r
-               fb($value,$varname);\r
                $this->datas[$varname] = $value;\r
        }\r
 \r
index ea114779ec89b3b177b66bb45644750a494fafd2..5be148bdb2b3c8ba9d907491588cf90c3a0db899 100644 (file)
@@ -23,6 +23,7 @@
                        <top>8</top>\r
                        <left>auto</left>\r
                        <bottom>0</bottom>\r
+                       <upper>1</upper>\r
                        <texte>$texte</texte>\r
                </layer>\r
                <layer>\r
@@ -34,6 +35,7 @@
                        <top>41</top>\r
                        <left>auto</left>\r
                        <bottom>0</bottom>\r
+                       <upper>1</upper>\r
                        <texte>$texte</texte>\r
                </layer>\r
        </template>\r