]> _ Git - cubeextranet.git/commitdiff
wip #4464 @1
authorvincent@cubedesigners.com <vincent@cubedesigners.com@f5622870-0f3c-0410-866d-9cb505b7a8ef>
Tue, 11 May 2021 19:34:27 +0000 (19:34 +0000)
committervincent@cubedesigners.com <vincent@cubedesigners.com@f5622870-0f3c-0410-866d-9cb505b7a8ef>
Tue, 11 May 2021 19:34:27 +0000 (19:34 +0000)
inc/commons/DAO/class.common.dao.utilisateur.php
inc/commons/Metier/class.common.utilisateur.php
inc/commons/class.common.core.php
inc/ws/Util/_common.php
inc/ws/Util/class.ws.ws3api.php [new file with mode: 0644]

index f10ff50e742116c7cdfc853e3f3de818b7f82045..e690b849a459894e7f4b89f7204265c195b1fa57 100644 (file)
@@ -29,6 +29,7 @@ class commonDAOUtilisateur extends commonDAO
         $utilisateur->prenom = $r->prenom;\r
         $utilisateur->email = $r->email;\r
         $utilisateur->password = $r->password;\r
+        $utilisateur->api_token = $r->api_token;\r
         $utilisateur->ws_password = $r->ws_password;\r
         $utilisateur->adresse = $r->adresse;\r
         $utilisateur->code_postal = $r->code_postal;\r
@@ -92,6 +93,7 @@ class commonDAOUtilisateur extends commonDAO
         $utilisateur->prenom = '';\r
         $utilisateur->email = '';\r
         $utilisateur->password = crypt::createPassword();\r
+        $utilisateur->api_token= CubeIT_Crypt::generateRandomString(60);\r
         $utilisateur->adresse = '';\r
         $utilisateur->code_postal = '';\r
         $utilisateur->ville = '';\r
index 4e8ebf6d8bdcc396d8279049285f71253ee9064a..0414b835989f31e3f49e30262d7330c84557425c 100644 (file)
@@ -7,6 +7,7 @@ class commonUtilisateur extends cubeMetier {
        protected $email;\r
        protected $login;\r
        protected $password;\r
+       protected $api_token;\r
        protected $nom;\r
        protected $prenom;\r
        protected $adresse;\r
index 31bf0feb178280adbda8fe76c7d0eb59bd8122c8..85ffd59ef20228142ef6f8307dc1260436db72a8 100644 (file)
@@ -534,7 +534,7 @@ class commonCore extends cubeCore
 \r
         }\r
 \r
-        $this->views->createView('e2_u', 'SELECT id AS utilisateur_id, enabled, email, password, e1_ws_password AS ws_password, firstname AS prenom, lastname AS nom, phone AS telephone,e1_mobile AS mobile,e1_fax as fax, locale AS lang,\r
+        $this->views->createView('e2_u', 'SELECT id AS utilisateur_id, enabled, email, password, api_token, e1_ws_password AS ws_password, firstname AS prenom, lastname AS nom, phone AS telephone,e1_mobile AS mobile,e1_fax as fax, locale AS lang,\r
  e1_ws_settings AS ws_settings, e1_settings AS settings, e1_ws_rights AS ws_rights, e1_ws_domains AS ws_domains, e1_ws_count AS ws_count, e1_login AS login,e1_grade AS grade,e1_resetpassword AS reset_password,\r
  JSON_UNQUOTE(address->"$.address") AS adresse,\r
  JSON_UNQUOTE(address->"$.postcode") AS code_postal,\r
index 7104abd208c841f637337b8d3c7ce6f7540232eb..adc7eaf2e796b2cc1d8960e767723572eebb920a 100644 (file)
@@ -11,5 +11,6 @@ $__autoload['wsExporter'] = __DIR__. '/class.ws.exporter.php';
 $__autoload['wsPDFConvert'] = __DIR__. '/class.ws.pdf.convert.php';\r
 $__autoload['wsUtil'] = __DIR__. '/class.ws.util.php';\r
 $__autoload['wsArticles'] = __DIR__. '/class.ws.articles.php';\r
+$__autoload['ws3API'] = __DIR__. '/class.ws.ws3api.php';\r
 \r
 $__autoload['wsHTML5'] = __DIR__. '/html5/class.ws.html5.php';\r
diff --git a/inc/ws/Util/class.ws.ws3api.php b/inc/ws/Util/class.ws.ws3api.php
new file mode 100644 (file)
index 0000000..2ddaedd
--- /dev/null
@@ -0,0 +1,45 @@
+<?php\r
+\r
+\r
+class ws3API extends Zend_Rest_Client\r
+{\r
+    public function __construct($uri = null)\r
+    {\r
+        if (null === $uri) {\r
+            $uri = 'https://toolbox.fluidbook.com/api/';\r
+        }\r
+        parent::__construct($uri);\r
+\r
+    }\r
+\r
+    /**\r
+     * @param wsTheme $theme\r
+     * @throws Zend_Http_Client_Exception\r
+     */\r
+    public function createTheme($theme)\r
+    {\r
+        global $core;\r
+        $this->restPost('fluidbook-theme', ['api_token' => $core->user->api_token, 'theme' => $this->_themeData($theme)]);\r
+    }\r
+\r
+    public function updateTheme($theme)\r
+    {\r
+        global $core;\r
+        $this->restPut('fluidbook-theme/' . $theme->theme_id, ['api_token' => $core->user->api_token, 'theme' => $this->_themeData($theme)]);\r
+    }\r
+\r
+    /**\r
+     * @param wsTheme $theme\r
+     */\r
+    protected function _themeData($theme)\r
+    {\r
+        $data = [];\r
+        $data['theme_id'] = $theme->theme_id;\r
+        $data['proprietaire'] = $theme->proprietaire;\r
+        $data['nom'] = $theme->nom;\r
+        $data['parametres'] = $theme->parametres->toArray();\r
+\r
+        return $data;\r
+    }\r
+\r
+}
\ No newline at end of file