<?php /** * @class WSUserMgr * @version $Id: WSUserMgr.php 2806 2015-03-02 15:31:05Z natacha $ * */ class WSUserMgr extends UserMgr { protected $isSoap; /***************************************************************** * PUBLIC FUNCTIONS *****************************************************************/ public function init($username, $password, $sessionID, $isSoap) { $this->user = trim($username); $this->sessionID = trim($sessionID); $this->passwd = trim($password); $this->userWS = USERPATH . "/" . $this->user . "/WS/"; $this->userdir = USERPATH . "/" . $this->user . "/"; $this->userMissions = $this->getAvailableMissionsByUser(); chmod($this->userWS, 0775); if (isset($isSoap)) { $this->isSoap = $isSoap; } else $this->isSoap = false; $this->setPath(); if ($this->ddCheckUser() != 0) { if ($this->ddLogin() != 0) { // DD Login if user is not registered if ($this->isSoap) throw new SoapFault("server00", "Server Error: AMDA Login procedure failed"); else return array("error" => "Server Error: AMDA Login procedure failed"); } if ($this->ddCheckUser() != 0) { if ($this->isSoap) throw new SoapFault("server01", "Server Error: Check User procedure failed"); else return array("error" => "Server Error: CheckUser procedure failed"); } } if (!is_dir($this->userdir)) { if (!$this->createDir()) { die("Login for " . $this->user . " failed: Can't create WS dirs"); } $this->isFirst = true; } return array('success' => true); } public function makeUserWS() { $this->makeLocalTree(); $this->makeRemoteTree(); return $sessionID = $this->user; } } ?>