diff --git a/core/trunk/core/class/class_security.php b/core/trunk/core/class/class_security.php index 95cb3481374f774b960c2a77076387e62c7bcfd1..ba7a3ee3b6a59cf95789e0f8bf123ad581ef041d 100644 --- a/core/trunk/core/class/class_security.php +++ b/core/trunk/core/class/class_security.php @@ -163,6 +163,28 @@ class security extends dbquery $ugc = new usergroups_controler(); $sec_controler = new SecurityControler(); $serv_controler = new ServiceControler(); + if (isset($_SESSION['modules_loaded']['visa'])) { + if ($user->__get('signature_path') <> '' + && $user->__get('signature_file_name') <> '' + ) { + $_SESSION['user']['signature_path'] = $user->__get('signature_path'); + $_SESSION['user']['signature_file_name'] = $user->__get('signature_file_name'); + $db = new dbquery(); + $db->connect(); + $query = "select path_template from " + . _DOCSERVERS_TABLE_NAME + . " where docserver_id = 'TEMPLATES'"; + $db->query($query); + $resDs = $db->fetch_object(); + $pathToDs = $resDs->path_template; + $_SESSION['user']['pathToSignature'] = $pathToDs . str_replace( + "#", + DIRECTORY_SEPARATOR, + $_SESSION['user']['signature_path'] + ) + . $_SESSION['user']['signature_file_name']; + } + } $array = array( 'change_pass' => $user->__get('change_password'), 'UserId' => $user->__get('user_id'), @@ -172,9 +194,12 @@ class security extends dbquery 'Mail' => $user->__get('mail'), 'department' => $user->__get('department'), 'thumbprint' => $user->__get('thumbprint'), + 'signature_path' => $user->__get('signature_path'), + 'signature_file_name' => $user->__get('signature_file_name'), + 'pathToSignature' => $_SESSION['user']['pathToSignature'], 'Status' => $user->__get('status'), ); - // $_SESSION['error'] = ''; + // $_SESSION['error'] = ''; setcookie( 'maarch', 'UserId=' . $array['UserId'] . '&key=' . $user->__get('cookie_key'), time() - 3600000, @@ -309,7 +334,6 @@ class security extends dbquery $comp = " and cookie_key = '".$s_key."' and STATUS <> 'DEL'"; $uc = new users_controler(); $user = users_controler::get($s_login, $comp); - if(isset($user)) { if($user->__get('enabled') == "Y") @@ -323,6 +347,29 @@ class security extends dbquery $_SESSION['user']['Mail'] = $user->__get('mail'); $_SESSION['user']['department'] = $user->__get('department'); $_SESSION['user']['thumbprint'] = $user->__get('thumbprint'); + if (isset($_SESSION['modules_loaded']['visa'])) { + if ($user->__get('signature_path') <> '' + && $user->__get('signature_file_name') <> '' + ) { + $_SESSION['user']['signature_path'] = $user->__get('signature_path'); + $_SESSION['user']['signature_file_name'] = $user->__get('signature_file_name'); + $db = new dbquery(); + $db->connect(); + $query = "select path_template from " + . _DOCSERVERS_TABLE_NAME + . " where docserver_id = 'TEMPLATES'"; + $db->query($query); + $resDs = $db->fetch_object(); + $pathToDs = $resDs->path_template; + $_SESSION['user']['pathToSignature'] = $pathToDs . str_replace( + "#", + DIRECTORY_SEPARATOR, + $_SESSION['user']['signature_path'] + ) + . $_SESSION['user']['signature_file_name']; + } + } + $_SESSION['error'] = ""; setcookie("maarch", "UserId=".$_SESSION['user']['UserId']."&key=".$line->cookie_key,time()-3600000, 0, 0, $_SERVER["HTTPS"], 1); $key = md5(time()."%".$_SESSION['user']['FirstName']."%".$_SESSION['user']['UserId']."%".$_SESSION['user']['UserId']."%".date("dmYHmi")."%"); diff --git a/core/trunk/sql/150.sql b/core/trunk/sql/150.sql index 61d48e32dc8e8658d137d431bd749e8a7a0101f0..70019111fbf4c38134f81f243c889b633b444643 100644 --- a/core/trunk/sql/150.sql +++ b/core/trunk/sql/150.sql @@ -324,6 +324,12 @@ ALTER TABLE templates ADD template_attachment_type character varying(255) DEFAUL ALTER TABLE users DROP COLUMN IF EXISTS thumbprint; ALTER TABLE users ADD thumbprint text; +ALTER TABLE users DROP COLUMN IF EXISTS signature_path; +ALTER TABLE users ADD signature_path character varying(255) DEFAULT NULL::character varying; + +ALTER TABLE users DROP COLUMN IF EXISTS signature_file_name; +ALTER TABLE users ADD signature_file_name character varying(255) DEFAULT NULL::character varying; + DELETE FROM status WHERE id = 'A_TRA'; INSERT INTO status (id, label_status, is_system) VALUES ('A_TRA', 'A traiter', 'N'); diff --git a/core/trunk/sql/structure.sql b/core/trunk/sql/structure.sql index f7df043cf4b2df54b1ac22734656d5c5ea55e8a7..ad47c850347b5fee11228ddbdc04ac0f0e4460d3 100644 --- a/core/trunk/sql/structure.sql +++ b/core/trunk/sql/structure.sql @@ -300,6 +300,8 @@ CREATE TABLE users loginmode character varying(50) DEFAULT NULL::character varying, docserver_location_id character varying(32) DEFAULT NULL::character varying, thumbprint text DEFAULT NULL::character varying, + signature_path character varying(255) DEFAULT NULL::character varying, + signature_file_name character varying(255) DEFAULT NULL::character varying, CONSTRAINT users_pkey PRIMARY KEY (user_id) ) WITH (OIDS=FALSE);