return $entreprise;\r
}\r
\r
+ public function setWSAdmin($entreprise_id, $admin_id)\r
+ {\r
+ $c = $this->con->openCursor('entreprises');\r
+ $c->ws_admin = $admin_id;\r
+ $c->update('WHERE entreprise_id=\'' . $this->con->escape($entreprise_id) . '\'');\r
+ }\r
+\r
public function supprime($entreprise_id)\r
{\r
$this->con->execute('DELETE FROM utilisateurs WHERE entreprise=\'' . $this->con->escape($entreprise_id) . '\'');\r
return null;\r
}\r
\r
+ public function selectWSRevendeursFacturables(){\r
+ $r=$this->con->select('SELECT * FROM utilisateurs_entreprise WHERE ws_grade BETWEEN 3 AND 4 AND utilisateur_id IN(SELECT facturable_id FROM ws_users_tree) ORDER BY rs');\r
+ return $this->factory($r);\r
+ }\r
+\r
protected function getNextId()\r
{\r
$r = $this->con->select('SELECT MAX(utilisateur_id) AS utilisateur_id FROM utilisateurs');\r
$limit = is_null($limit)?'':$this->con->limit($limit[0], $limit[1]);\r
\r
$sql = 'SELECT * FROM ' . $table . ' WHERE (' . $where . ') ORDER BY ' . $orderby . ' ' . $sens . ' ' . $limit;\r
- fb($sql);\r
return $sql;\r
}\r
\r
$db->demandes->status('integer', 0, false);\r
$db->demandes->revendeur('integer', 0, false);\r
$db->demandes->utilisateur('integer', 0, false);\r
+ $db->demandes->administrateur('integer', 0, false);\r
// Clés\r
$db->demandes->primary('pk_demandes', 'demande_id');\r
\r
. 'LEFT JOIN books b ON t.theme_id=b.theme '\r
. 'GROUP BY t.theme_id');\r
\r
- $this->views->createView('demandes_vue', 'SELECT d.*, CONCAT(c.rs,\' (\',c.prenom,\' \',c.nom,\')\') AS utilisateur_nom, CONCAT(r.rs,\' (\',r.prenom,\' \',r.nom,\')\') AS revendeur_nom, c.entreprise AS entreprise '\r
+ $this->views->createView('demandes_vue', 'SELECT d.*, CONCAT(c.rs,\' (\',c.prenom,\' \',c.nom,\')\') AS utilisateur_nom, CONCAT(r.rs,\' (\',r.prenom,\' \',r.nom,\')\') AS revendeur_nom, c.entreprise AS entreprise, a.prenom AS administrateur_nom '\r
. 'FROM demandes d '\r
. 'LEFT JOIN utilisateurs_entreprise r ON d.revendeur=r.utilisateur_id '\r
- . 'LEFT JOIN utilisateurs_entreprise c ON d.utilisateur=c.utilisateur_id');\r
+ . 'LEFT JOIN utilisateurs_entreprise c ON d.utilisateur=c.utilisateur_id '\r
+ . 'LEFT JOIN utilisateurs a ON d.administrateur=a.utilisateur_id');\r
// cubeDb::mysqlConvert($this->con);\r
touch($cache);\r
}\r
if (MODE == 'extranet') {\r
$droits = array('projets' => 1, 'factures' => 1, 'devis' => 1, 'clients' => 1, 'timereport' => 1, 'fichiers' => 0);\r
} elseif (MODE == 'ws') {\r
- $droits = array('clients' => 3, 'fichiers' => 0, 'publications' => 3);\r
+ $droits = array('clients' => 3, 'fichiers' => 0, 'publications' => 3,'devis'=>3);\r
}\r
if (MODE == 'extranet') {\r
return (isset($droits[$page]) && $droits[$page] <= $core->user->grade);\r
$this->values[$i] = $i;\r
}\r
$this->all = __('Toutes');\r
+ } elseif ($this->varname == 'demande_moi') {\r
+ $this->values = array(__('Moi') => 'moi', __('Autres') => 'autres');\r
+ $this->all = __('Toutes');\r
}\r
}\r
\r
} elseif ($args[1] == 'wsuser') {\r
$dao = new commonDAOUtilisateur($core->con);\r
$dao->setSearch($q, true);\r
- $clients = $dao->getListe('utilisateur_id','ASC', null, ' AND ws_grade>0', $core->user);\r
+ $clients = $dao->getListe('utilisateur_id', 'ASC', null, ' AND ws_grade>0', $core->user);\r
foreach($clients as $client) {\r
$suggestions[] = $client->utilisateur_id . ' - ' . $client->rs . ' (' . $client->prenom . ' ' . $client->nom . ')';\r
}\r
} elseif ($args[1] == 'wsadmin') {\r
$dao = new commonDAOUtilisateur($core->con);\r
$dao->setSearch($q, true);\r
- $clients = $dao->getListe('utilisateur_id', 'ASC', null, 'AND ws_grade>2', $core->user);\r
+ $clients = $dao->getListe('utilisateur_id', 'ASC', null, 'AND ws_grade>2', $core->user);\r
foreach($clients as $client) {\r
$suggestions[] = $client->utilisateur_id . ' - ' . $client->rs . ' (' . $client->prenom . ' ' . $client->nom . ')';\r
}\r
$res .= extranetUrl::listeClients($r->dashboard_id, self::getDashboardSettings($r->settings));\r
} elseif ($r->rubrique == 'timereport') {\r
$res .= extranetUrl::listeTimereport($r->dashboard_id, self::getDashboardSettings($r->settings));\r
+ } elseif ($r->rubrique == 'demandes') {\r
+ $res .= wsUrl::listeDemandes($r->dashboard_id, self::getDashboardSettings($r->settings));\r
}\r
$res .= '</div>';\r
$res .= commonPage::bf();\r
\r
if ($ws) {\r
define('GA', 'UA-4339912-5');\r
- define('TITLE', 'Fuidbook Workshop');\r
+ define('TITLE', 'Fuidbook Workshop DEV');\r
\r
- define('FROM_EMAIL', 'contact@fluidbook.com');\r
+ define('FROM_EMAIL', 'tech@fluidbook.com');\r
define('FROM_NAME', 'Fluidbook Workshop');\r
- define('EMAIL_SUBJECT', 'Fluidbook Workshop');\r
+ define('EMAIL_SUBJECT', 'Fluidbook Workshop DEV');\r
define('TEAM_EMAIL', 'team@fluidbook.com');\r
define('TEAM_NAME', __("L'équipe Fluidbook"));\r
define('RAPPEL', __('Rappel des identifiants de connexion au Fluidbook Workshop'));\r
define('ASK_IDENT', __('Vous avez demandé la récupération de votre mot de passe sur le Fluidbook Workshop'));\r
} elseif ($extranet) {\r
define('GA', 'UA-4339912-4');\r
- define('TITLE', 'Extranet Cubedesigners');\r
+ define('TITLE', 'Extranet Cubedesigners DEV');\r
\r
define('FROM_EMAIL', 'contact@cubedesigners.com');\r
- define('FROM_NAME', 'Extranet Cubedesigners');\r
- define('EMAIL_SUBJECT', 'Extranet Cubedesigners');\r
+ define('FROM_NAME', 'Extranet Cubedesigners DEV');\r
+ define('EMAIL_SUBJECT', 'Extranet Cubedesigners DEV');\r
define('TEAM_EMAIL', 'team@cubedesigners.com');\r
define('TEAM_NAME', __("L'équipe Cubedesigners"));\r
define('RAPPEL', __('Rappel des identifiants de connexion à l\'extranet Cubedesigners'));\r
$daoUtilisateur = new commonDAOUtilisateur($core->con);\r
$utilisateur = $daoUtilisateur->selectByEmail($_POST['email']);\r
if ($utilisateur != null) {\r
- $utilisateur_id = $this->utilisateur_id;\r
+ $utilisateur_id = $utilisateur->utilisateur_id;\r
} else {\r
// Création de l'entreprise\r
$daoEntreprise = new commonDAOEntreprise($core->con);\r
$datas['utilisateur'] = $utilisateur_id;\r
$datas['revendeur'] = 0;\r
$datas['status'] = 0;\r
+ $datas['administrateur'] = 0;\r
$daoDemande = new wsDAODemande($core->con);\r
$daoDemande->sauve($datas);\r
\r
+ $fields = array('prenom' => 'Prenom',\r
+ 'nom' => 'Nom',\r
+ 'email' => 'E-mail',\r
+ 'telephone' => 'Telephone',\r
+ 'rs' => 'Société',\r
+ 'site' => 'Site web',\r
+ 'adresse' => 'Adresse',\r
+ 'code_postal' => 'Code postal',\r
+ 'ville' => 'Ville',\r
+ 'pays' => 'Pays',\r
+ 'produits' => 'Type',\r
+ 'lang' => 'Langue du visiteur',\r
+ 'nombre_liens' => 'Liens',\r
+ 'nombre_pages' => 'Pages',\r
+ 'nombre_langues' => 'Langues',\r
+ 'detail' => 'Commentaires');\r
+ $mail = new cubeMail();\r
+ $mail->charset = 'UTF-8';\r
+ $mail->from = $_POST['prenom'] . ' ' . $_POST['nom'];\r
+ $mail->to = FROM_EMAIL;\r
+ $mail->subject = '[' . EMAIL_SUBJECT . '] Demande de devis';\r
+ $body = 'Une demande de devis a été envoyée avec les informations suivantes :' . "\r\n\r\n";\r
+ foreach($fields as $f => $d) {\r
+ if ($_POST[$f] != '') {\r
+ if ($f == 'pays') {\r
+ $body .= ' * ' . $d . ' : ' . cubeCountry::getCountry($_POST[$f], 'fr') . "\r\n";\r
+ } else {\r
+ $body .= ' * ' . $d . ' : ' . $_POST[$f] . "\r\n";\r
+ }\r
+ }\r
+ }\r
+ $body .= "\r\n";\r
+ $body .= 'Veuillez-vous rendre sur le Fluidbook Workshop (http://' . $_SERVER['HTTP_HOST'] . ' pour prendre en charge la demande ou la confier à un revendeur' . "\r\n";\r
+ $mail->body = $body;\r
+ $mail->send();\r
+\r
$x->addAlert(__("Votre demande de devis a bien été envoyée. Merci pour l'intérêt que vous portez à Fluidbook."));\r
+ $core->refreshWSUsersTree();\r
}\r
\r
public static function valideDemandeDevis(&$x)\r
foreach($d as $k => $v) {\r
$_POST[$k] = trim($v);\r
}\r
- if(isset($_POST['pages'])){\r
-\r
- $_POST['nombre_pages']=$_POST['pages'];\r
- $_POST['nombre_liens']=$_POST['liens'];\r
- $_POST['nombre_langues']=$_POST['langues'];\r
+ if (isset($_POST['pages'])) {\r
+ $_POST['nombre_pages'] = $_POST['pages'];\r
+ $_POST['nombre_liens'] = $_POST['liens'];\r
+ $_POST['nombre_langues'] = $_POST['langues'];\r
}\r
file_put_contents(ROOT . '/cache/demandeDevis.txt', print_r($_POST, true));\r
// Validation des champs de formulaires\r
$x->addContent('listeDemandes', wsUrl::listeDemandes());\r
}\r
}\r
+\r
+ public static function formDemande($args, &$x)\r
+ {\r
+ if (!isset($args[2])) {\r
+ $args[2] = null;\r
+ }\r
+ commonAjax::form('saveDemande', __("Edition d'une demande"), wsUrl::formDemande($args[1], $args[2]));\r
+ }\r
+\r
+ public static function saveDemande($args, &$x)\r
+ {\r
+ global $core;\r
+ $dao = new wsDAODemande($core->con);\r
+ $demande = $dao->setRevendeur($_POST['demande_id'], $_POST['revendeur']);\r
+\r
+ if ($_POST['revendeur'] != $core->user->utilisateur_id) {\r
+ $daoUtilisateur = new commonDAOUtilisateur($core->con);\r
+ $r = $daoUtilisateur->selectById($_POST['revendeur']);\r
+\r
+ self::sendDemandeToRevendeur($demande, $r);\r
+ }\r
+\r
+ $x->addContent('listeDemandes' , wsUrl::listeDemandes());\r
+ $x->addClosePopup();\r
+ }\r
+\r
+ public static function sendDemandeToRevendeur($demande, $revendeur)\r
+ {\r
+ global $core;\r
+\r
+ $dao = new commonDAOUtilisateur($core->con);\r
+ $utilisateur = $dao->selectById($demande->utilisateur, 'utilisateurs_entreprise');\r
+\r
+ $mail = new cubeMail();\r
+ $mail->from = FROM_NAME . '<' . FROM_EMAIL . '>';\r
+ $mail->to = 'tech@fluidbook.com';\r
+ $mail->subject = '[' . EMAIL_SUBJECT . '] ' . __('Demande de devis');\r
+\r
+ $body = "\r\n---- " . __('Demande') . ' ----' . "\r\n";\r
+ $fields = array('type' => __('Type'),\r
+ 'pages' => __('Pages'),\r
+ 'liens' => __('Liens'),\r
+ 'langues' => __('Langues'),\r
+ 'details' => __('Commentaires'));\r
+ foreach($fields as $p => $t) {\r
+ if ($demande->$p != '') {\r
+ $body .= ' * ' . $t . ' : ' . $demande->$p . "\r\n";\r
+ }\r
+ }\r
+\r
+ $body .= "\r\n" . '---- ' . __('Coordonnées') . ' ----' . "\r\n";\r
+ $fields = array('prenom' => __('Prenom'),\r
+ 'nom' => __('Nom'),\r
+ 'rs' => __('Entreprise'),\r
+ 'adresse' => __('Adresse'),\r
+ 'code_postal' => __('Code postal'),\r
+ 'ville' => __('Ville'),\r
+ 'pays' => 'Pays');\r
+ foreach($fields as $p => $t) {\r
+ if ($utilisateur->$p != '') {\r
+ if ($p == 'pays') {\r
+ $body .= ' * ' . $t . ' : ' . cubeCountry::getCountry($utilisateur->$p, $revendeur->lang) . "\r\n";\r
+ } else {\r
+ $body .= ' * ' . $t . ' : ' . $utilisateur->$p . "\r\n";\r
+ }\r
+ }\r
+ }\r
+\r
+ $body .= "\r\n";\r
+ $body .= __('Afin de nous confirmer que vous prenez en compte cette demande, veuillez cliquer sur le lien ci-dessous') . " : \r\n";\r
+ $body .= 'http://' . $_SERVER['HTTP_HOST'] . '/accepteDemande/' . $demande->demande_id . '/' . $revendeur->utilisateur_id . "\r\n";\r
+ $body .= "\r\n";\r
+ $body .= __("Si dans un délai de deux jour ouvrés, vous n'avez pas accepter cette demande, nous nous réservons le droit de le prendre en charge.") . "\r\n";\r
+\r
+ $mail->body = $body;\r
+ // $mail->to = $r->email;\r
+ // $mail->bcc='tech@fluidbook.com';\r
+ $mail->send();\r
+ }\r
+\r
+ public static function reponseDemande($args, &$x)\r
+ {\r
+ global $core;\r
+ $dao = new wsDAODemande($core->con);\r
+ $demande = $dao->selectById($demande_id);\r
+\r
+ if ($demande->revendeur != $revendeur_id) {\r
+ commonDroits::error();\r
+ }\r
+\r
+ $demande_id = $args[1];\r
+ $revendeur_id = $args[2];\r
+ $reponse = $args[3];\r
+\r
+ if ($reponse == '0') {\r
+ $dao->reinitDemande($demande_id);\r
+ } else {\r
+ $dao->accepteDemande($demande_id);\r
+ }\r
+\r
+ $x->addAlert(__('Votre choix a bien été prise en compte.'));\r
+ $x->addRedirection(SITE_PATH);\r
+ }\r
}\r
\r
?>
\ No newline at end of file
$shortcuts[] = '<a href="#" class="popup" rel="formClient/new">' . $core->typo->Ajouter('Créer un nouveau client') . '</a>';\r
\r
$filtres = array();\r
- if (wsDroits::admin(false)) {\r
- $filtres[] = new commonFiltre(__('Ayant un projet'), 'status_client_projet', $settings['filtres']);\r
- $filtres[] = new commonFiltre(__('Ayant des impayés'), 'impaye', $settings['filtres']);\r
- }\r
+\r
$res = commonPage::barre($filtres, 'filtreClients', 'clients', $shortcuts);\r
$res .= commonPage::tMain();\r
$res .= commonPage::bh();\r
$shortcuts = array();\r
\r
$filtres = array();\r
- $filtres[] = new commonFiltre(__('Status'), 'status_demande', $settings['filtres']);\r
+ $filtres[] = new commonFiltre(__('Statut'), 'status_demande', $settings['filtres']);\r
+ $filtres[] = new commonFiltre(__('Confiées à'), 'demande_moi', $settings['filtres']);\r
\r
$res = commonPage::barre($filtres, 'filtreDemandes', 'demandes', $shortcuts);\r
$res .= commonPage::tMain();\r
$res .= '<th>' . commonUrl::orderby(__('Type') , 'type', $settings, 'sort' . $change) . '</th>';\r
$res .= '<th>' . commonUrl::orderby(__('Prospect') . '/' . __('Client'), 'utilisateur_nom', $settings, 'sort' . $change) . '</th>';\r
$res .= '<th>' . commonUrl::orderby(__('Confiée à'), 'revendeur_nom', $settings, 'sort' . $change) . '</th>';\r
+ $res .= '<th>' . commonUrl::orderby(__('Editée par'), 'administrateur_nom', $settings, 'sort' . $change) . '</th>';\r
$res .= '<th>' . commonUrl::orderby(__('Statut'), 'status', $settings, 'sort' . $change) . '</th>';\r
- $res .= '<th></th><th></th></tr>';\r
+ $res .= '<th class="min"></th></tr>';\r
$i = 0;\r
foreach($liste as $id => $demande) {\r
$odd = cubeMath::isOdd($i)?' class="odd"':'';\r
$res .= '<td>' . date(__('d/m/Y H:i'), $demande->date) . '</td>';\r
$res .= '<td>' . $core->demandes_type[$demande->type] . '</td>';\r
$res .= '<td><a href="#" class="popup" rel="formClient/' . $demande->entreprise . '">' . $demande->utilisateur_nom . '</a></td>';\r
- $revendeur = $demande->revendeur == 0?__('Non défini'):$demande->revendeur_nom;\r
+ $revendeur = $demande->revendeur == 0?'-':$demande->revendeur_nom;\r
$res .= '<td>' . $revendeur . '</td>';\r
+ $administrateur = $demande->administrateur == 0?'-':$demande->administrateur_nom;\r
+ $res .= '<td>' . $administrateur . '</td>';\r
$res .= '<td>' . $core->demandes_status[$demande->status] . '</td>';\r
- $res .= '<td><a href="">Je me charge du devis</a></td>';\r
- $res .= '<td><a href="">Je confie devis</a></td>';\r
+ if ($demande->administrateur == 0 || $demande->administrateur == $core->user->utilisateur_id) {\r
+ $res .= '<td class="action"><a href="#" class="popup" rel="formDemande/' . $demande->demande_id . '">' . cubeMedia::image(IMG . '/edit.png') . '</a></td>';\r
+ } else {\r
+ $res .= '<td></td>';\r
+ }\r
$res .= '</tr>';\r
$i++;\r
}\r
$res .= '</table>';\r
return $res;\r
}\r
+\r
+ public static function formDemande($demande_id = 'new')\r
+ {\r
+ global $core;\r
+ commonDroits::min(5);\r
+ $dao = new wsDAODemande($core->con);\r
+ $daoUtilisateur = new commonDAOUtilisateur($core->con);\r
+ $demande = $dao->selectById($demande_id);\r
+ if ($demande->administrateur != 0 && $demande->administrateur != $core->user->utilisateur_id) {\r
+ $res = '<tr><td colspan="2"><p class="center">' . __("Cette demande est actuellement en cours d'édition par un autre administrateur") . '</p></td></tr>';\r
+ return $res;\r
+ }\r
+ if ($demande->status == 2) {\r
+ $res = '<tr><td colspan="2"><p class="center">' . __("Cette demande a été confiée à un revendeur qui s'est chargé de la traiter") . '</p></td></tr>';\r
+ return $res;\r
+ }\r
+ $dao->setAdministrateur($demande_id, $core->user->utilisateur_id);\r
+\r
+ $liste = $daoUtilisateur->selectWSRevendeursFacturables();\r
+ $revendeurs = array();\r
+\r
+ foreach($liste as $revendeur) {\r
+ $revendeurs[' > ' . $revendeur->rs . '(' . $revendeur->prenom . ' ' . $revendeur->nom . ')'] = $revendeur->utilisateur_id;\r
+ }\r
+\r
+ $actions = array('Je me charge de cette demande' => $core->user->utilisateur_id);\r
+ $actions[' '] = array();\r
+ $actions['Je confie la demande à :'] = $revendeurs;\r
+\r
+ $res = '<tr><td>' . __('Numéro de demande') . '</td><td>' . form::hidden('demande_id', $demande->demande_id) . '' . $demande->demande_id . '</td></tr>';\r
+ $res .= '<tr><td>' . __('Date de la demande') . '</td><td>' . date(__('d/m/Y H:i'), $demande->date) . '</td></tr>';\r
+ $res .= '<tr><td>' . __('Emetteur de la demande') . '</td><td><a href="#" class="popup" rel="formClient/' . $demande->entreprise . '">' . $demande->utilisateur_nom . '</a></td></tr>';\r
+ $res .= '<tr><td>' . __('Nombre de pages') . '</td><td>' . $demande->pages . '</td></tr>';\r
+ $res .= '<tr><td>' . __('Nombre de liens') . '</td><td>' . $demande->liens . '</td></tr>';\r
+ $res .= '<tr><td>' . __('Nombre de langues') . '</td><td>' . $demande->langues . '</td></tr>';\r
+ $res .= '<tr><td>' . __('Détails') . '</td><td>' . $demande->details . '</td></tr>';\r
+ $res .= '<tr><td>' . __('Action') . '</td><td>' . form::combo('revendeur', $actions) . '</td></tr>';\r
+ $res .= '<tr><td></td></tr>';\r
+\r
+ return $res;\r
+ }\r
+\r
+ public static function accepteDemande($args)\r
+ {\r
+ global $core;\r
+\r
+ commonDroits::min(3);\r
+\r
+ $res = commonPage::barre();\r
+ $res .= commonPage::tMain(null, false);\r
+\r
+ $res .= commonPage::bh();\r
+\r
+ $demande_id = $args[1];\r
+ $revendeur_id = $args[2];\r
+\r
+ $dao = new wsDAODemande($core->con);\r
+ $demande = $dao->selectById($demande_id);\r
+ if ($demande->revendeur != $revendeur_id) {\r
+ commonDroits::error();\r
+ exit;\r
+ }\r
+\r
+ $res = commonPage::barre();\r
+ $res .= commonPage::tMain();\r
+ $res .= commonPage::bh();\r
+ $res .= '<div id="accepteDemandes">';\r
+ $res .= '<h2>' . $core->typo->Titre(__('Prendre en charge une demande de devis')) . '</h2>';\r
+ $res .= '<br /><br />';\r
+ $res .= '<p>' . __('Si vous acceptez de traiter la demande suivante, veuillez cliquer sur le bouton "Accepter la demande" situé au dessous de la description.');\r
+ $res .= ' ' . __('Vous avez également la possibilité de décliner la demande en cliquant sur le bouton "Décliner la demande"') . "</p>";\r
+ $res .= '<br /><br />';\r
+\r
+ $res .= '<table>';\r
+ $res .= '<tr><th class="left" colspan="2">' . __("Détails de la demande") . '</th><th class="left" style="width:40%">' . __('Votre action') . '</th></tr>';\r
+ $res .= '<tr><td>' . __('Numéro de demande') . '</td><td>' . $demande->demande_id . '</td>';\r
+ $res .= '<td>' . '<a href="#" class="ajax" rel="reponseDemande/' . $demande_id . '/' . $revendeur_id . '/1" >' . cubeMedia::cssRollover($core->typo->BookTelecharger('Accepter la demande', '', false)) . '</a>' . '</td></tr>';\r
+ $res .= '<tr><td>' . __('Date de la demande') . '</td><td>' . date(__('d/m/Y H:i'), $demande->date) . '</td>';\r
+ $res .= '<td>' . '<a href="#" class="ajax" rel="reponseDemande/' . $demande_id . '/' . $revendeur_id . '/0">' . cubeMedia::cssRollover($core->typo->Supprimer('Décliner la demande', '', false)) . '</a>' . '</td>';\r
+ $res .= '</tr>';\r
+ $res .= '<tr><td>' . __('Client') . ' / ' . __('Prospect') . '</td><td><a href="#" class="popup" rel="formClient/' . $demande->entreprise . '">' . $demande->utilisateur_nom . '</a></td></tr>';\r
+ $res .= '<tr><td>' . __('Nombre de pages') . '</td><td>' . $demande->pages . '</td></tr>';\r
+ $res .= '<tr><td>' . __('Nombre de liens') . '</td><td>' . $demande->liens . '</td></tr>';\r
+ $res .= '<tr><td>' . __('Nombre de langues') . '</td><td>' . $demande->langues . '</td></tr>';\r
+ $res .= '<tr><td>' . __('Détails') . '</td><td>' . $demande->details . '</td></tr>';\r
+ $res .= '</table>';\r
+\r
+ $res .= '</div>';\r
+ $res .= commonPage::bf();\r
+ $res .= commonPage::bMain();\r
+ return $res;\r
+ }\r
}\r
\r
?>
\ No newline at end of file
protected function singleton($r)\r
{\r
$demande = new wsDemande();\r
- $demande->demande_id=$r->demande_id;\r
+ $demande->demande_id = $r->demande_id;\r
$demande->type = $r->type;\r
$demande->pages = $r->pages;\r
$demande->liens = $r->liens;\r
$demande->utilisateur = $r->utilisateur;\r
$demande->status = $r->status;\r
$demande->revendeur = $r->revendeur;\r
+ $demande->administrateur = $r->administrateur;\r
\r
$demande->utilisateur_nom = $r->utilisateur_nom;\r
$demande->revendeur_nom = $r->revendeur_nom;\r
- $demande->entreprise=$r->entreprise;\r
+ $demande->entreprise = $r->entreprise;\r
+ $demande->administrateur_nom = $r->administrateur_nom;\r
\r
return $demande;\r
}\r
$c->details = $data['details'];\r
$c->utilisateur = $data['utilisateur'];\r
$c->revendeur = $data['revendeur'];\r
+ $c->administrateur = $data['administrateur'];\r
$c->status = $data['status'];\r
\r
if ($data['demande_id'] == 'new' || $data['demande_id'] == '') {\r
return $this->selectById($demande_id);\r
}\r
\r
+ public function setAdministrateur($demande_id, $administrateur)\r
+ {\r
+ $c = $this->con->openCursor('demandes');\r
+ $c->administrateur = $administrateur;\r
+ $c->update('WHERE demande_id=\'' . $this->con->escape($demande_id) . '\'');\r
+ }\r
+\r
+ public function reinitDemande($demande_id)\r
+ {\r
+ $c = $this->con->openCursor('demandes');\r
+ $c->administrateur = 0;\r
+ $c->revendeur = 0;\r
+ $c->status = 0;\r
+ $c->update('WHERE demande_id=\'' . $this->con->escape($demande_id) . '\'');\r
+ }\r
+\r
+ public function setRevendeur($demande_id, $revendeur)\r
+ {\r
+ // Mets à jour l'entreprise\r
+ $c = $this->con->openCursor('demandes');\r
+ $c->revendeur = $revendeur;\r
+ $c->status = 1;\r
+ $c->update('WHERE demande_id=\'' . $this->con->escape($demande_id) . '\'');\r
+\r
+ $demande = $this->selectById($demande_id);\r
+ // Mets également à jour l'entreprise afin d'associer client et revendeur\r
+ $daoEntreprise = new commonDAOEntreprise($this->con);\r
+ $daoEntreprise->setWSAdmin($demande->entreprise, revendeur);\r
+ }\r
+\r
public function count()\r
{\r
$r = $this->con->select('SELECT COUNT(*) AS nb FROM demandes WHERE ' . $this->makeWhereFromFiltres());\r
\r
protected function makeWhereFromFiltres()\r
{\r
+ global $core;\r
if (!is_null($this->filtres)) {\r
$w = array('1=1');\r
if (commonFiltre::test('status_demande', $this->filtres)) {\r
$w[] = 'status IN(' . implode(',', array_keys($this->filtres['status_demande'])) . ')';\r
}\r
+ if (commonFiltre::test('demande_moi', $this->filtres)) {\r
+ $keys = array_keys($this->filtres['status_demande']);\r
+\r
+ foreach($keys as $k) {\r
+ if ($k == 'moi') {\r
+ $w[] = 'revendeur=' . $core->user->utilisateur_id;\r
+ } elseif ($k == 'autres') {\r
+ $w[] = 'revendeur!=' . $core->user->utilisateur_id;\r
+ }\r
+ }\r
+ }\r
return implode(' AND ', $w);\r
} else {\r
return '1=1';\r
\r
protected $revendeur;\r
protected $utilisateur;\r
+ protected $administrateur;\r
\r
protected $utilisateur_nom;\r
protected $revendeur_nom;\r
protected $entreprise;\r
+ protected $administrateur_nom;\r
}\r
\r
?>
\ No newline at end of file