fmsystem-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Fmsystem-commits] [11400] bkbooking: stavanger minid update


From: Kjell Arne Espedal
Subject: [Fmsystem-commits] [11400] bkbooking: stavanger minid update
Date: Mon, 28 Oct 2013 08:47:08 +0000

Revision: 11400
          http://svn.sv.gnu.org/viewvc/?view=rev&root=fmsystem&revision=11400
Author:   kjell
Date:     2013-10-28 08:47:07 +0000 (Mon, 28 Oct 2013)
Log Message:
-----------
bkbooking: stavanger minid update

Modified Paths:
--------------
    branches/stavangerkommune/bookingfrontend/inc/class.bouser.inc.php
    branches/stavangerkommune/bookingfrontend/inc/custom/default/MinId.php
    branches/stavangerkommune/bookingfrontend/setup/phpgw_no.lang
    branches/stavangerkommune/phpgwapi/templates/stavanger/head.inc.php

Modified: branches/stavangerkommune/bookingfrontend/inc/class.bouser.inc.php
===================================================================
--- branches/stavangerkommune/bookingfrontend/inc/class.bouser.inc.php  
2013-10-27 15:34:54 UTC (rev 11399)
+++ branches/stavangerkommune/bookingfrontend/inc/class.bouser.inc.php  
2013-10-28 08:47:07 UTC (rev 11400)
@@ -29,11 +29,23 @@
                        $this->db->limit_query("select name from 
bb_organization where organization_number ='" .$orgnr."'", 0, __LINE__, 
__FILE__, 1);
                        if(!$this->db->next_record())
                        {
-                               return $orgnr;
+                return $orgnr;
                        }
                        return $this->db->f('name', false);
 
                }
+               protected function get_organizations()
+               {
+            $results = array();
+                       $this->db = & $GLOBALS['phpgw']->db;
+                       $this->db->query("select organization_number,name from 
bb_organization ORDER by organization_number ASC", __LINE__, __FILE__);
+                       while ($this->db->next_record())
+                       {
+                               $results[] = 
$this->db->f('organization_number', false);
+                       }
+                       return $results;
+
+               }
                protected function set_module($module = null)
                {
                        $this->module = is_string($module) ? $module : 
$this->default_module;
@@ -44,7 +56,7 @@
                        return $this->module;
                }
 
-               public function log_in()
+               public function log_in() 
                {
                        $this->log_off();
                        $this->orgnr = $this->get_user_orgnr_from_auth_header();
@@ -174,18 +186,40 @@
             if ($config->config_data['authentication_method'] === 'MinId.php') 
{
 
                 header('Content-type: text/xml');
-#               $ipdp = $_COOKIE['iPlanetDirectoryPro'];
-#               $xmldata = 
simplexml_load_file('http://aktivby.stavanger.kommune.no:8080/spclient/auth.jsp?ipdp='.$ipdp);
+                $ipdp = $_COOKIE['iPlanetDirectoryPro'];
+                $xmldata = 
simplexml_load_file('http://aktivby.stavanger.kommune.no:8080/spclient/auth.jsp?ipdp='.$ipdp);
 
-                       $xmldata = 
simplexml_load_file('/srv/portico/svg/stavangerkommune_xml/test.xml');
 
-                       $myorgnr = null;
-                       foreach ($xmldata->melding->roller->enhet->orgnr as 
$key => $value) {
-                               $myorgnr = $value;
-                       }
+#                      $xmldata = 
simplexml_load_file('/srv/portico/svg/stavangerkommune_xml/test.xml');
 
-                       $external_user = (object) 'ciao'; $external_user->login 
= $myorgnr;
+                       $myorgnr = array();
+                       
+                $orgnummbers = $this->get_organizations();                
+                
+                
if(in_array((string)$xmldata->responseHeader->underStatus->underStatusMelding['kode'],array('180','181','182')))
 {
 
+                               $external_user = (object) 'ciao'; 
$external_user->login = '000000000';
+
+                } elseif 
($xmldata->responseHeader->underStatus->underStatusMelding[1]['kode'] == 
"1500") {
+                               $external_user = (object) 'ciao'; 
$external_user->login = '000000001';
+                } else {
+                    foreach ($xmldata->melding->roller as $value) {
+                        if 
(in_array((string)$value->enhet->orgnr,$orgnummbers)) {
+                                       $myorgnr[] = 
(string)$value->enhet->orgnr;
+                        } 
+                                   }
+                    if (count($myorgnr) > 1) {
+
+                               $external_user = (object) 'ciao'; 
$external_user->login = $myorgnr[1];
+                    }
+                    elseif (count($myorgnr) > 0) {
+                               $external_user = (object) 'ciao'; 
$external_user->login = $myorgnr[0];
+                        
+                    } else {
+                               $external_user = (object) 'ciao'; 
$external_user->login = '000000002';
+                    }
+                }                
+
             } else {
 
                        $header_key = isset($config->config_data['header_key']) 
&& $config->config_data['header_key'] ? $config->config_data['header_key'] : 
'Osso-User-Dn';

Modified: branches/stavangerkommune/bookingfrontend/inc/custom/default/MinId.php
===================================================================
--- branches/stavangerkommune/bookingfrontend/inc/custom/default/MinId.php      
2013-10-27 15:34:54 UTC (rev 11399)
+++ branches/stavangerkommune/bookingfrontend/inc/custom/default/MinId.php      
2013-10-28 08:47:07 UTC (rev 11400)
@@ -54,6 +54,8 @@
                 */
                public $debug = false;
 
+               public $orgs = array();
+
                public function __construct($wsdl, $options, $userid, $debug = 
false)
                {
                        if($debug)

Modified: branches/stavangerkommune/bookingfrontend/setup/phpgw_no.lang
===================================================================
--- branches/stavangerkommune/bookingfrontend/setup/phpgw_no.lang       
2013-10-27 15:34:54 UTC (rev 11399)
+++ branches/stavangerkommune/bookingfrontend/setup/phpgw_no.lang       
2013-10-28 08:47:07 UTC (rev 11400)
@@ -110,6 +110,11 @@
 location       bookingfrontend no      Lokale
 log on bookingfrontend no      Logg inn
 log off        bookingfrontend no      Logg ut
+login  common  no      Logg inn
+logout common  no      Logg ut
+Organization not in the database       common  no      Du er ikke registert på 
noen organisasjon som er i databasen
+No organization data   common  no      Du er ikke registert på noen 
organisasjon i Brønnøysundregisteret 
+SSN not registred      common  no      Personnummert ditt er ikke registert i 
Brønnøysundregisteret
 male   bookingfrontend no      Mann
 mar    bookingfrontend no      mars
 may    bookingfrontend no      mai

Modified: branches/stavangerkommune/phpgwapi/templates/stavanger/head.inc.php
===================================================================
--- branches/stavangerkommune/phpgwapi/templates/stavanger/head.inc.php 
2013-10-27 15:34:54 UTC (rev 11399)
+++ branches/stavangerkommune/phpgwapi/templates/stavanger/head.inc.php 
2013-10-28 08:47:07 UTC (rev 11400)
@@ -199,7 +199,15 @@
        $bouser = CreateObject('bookingfrontend.bouser');
        if($bouser->is_logged_in())
        {
-               $tpl_vars['login_text'] = $bouser->orgname . ' :: ' . 
lang('Logout');
+                if ( $bouser->orgname == '000000002') {
+                    $tpl_vars['login_text'] = lang('Organization not in the 
database'). ' :: ' . lang('Logout');
+                } elseif ( $bouser->orgname == '000000001') {
+                    $tpl_vars['login_text'] = lang('No organization data'). ' 
:: ' . lang('Logout');
+                } elseif ( $bouser->orgname == '000000000') { 
+                    $tpl_vars['login_text'] = lang('SSN not registred'). ' :: 
' . lang('Logout');
+                } else {
+                       $tpl_vars['login_text'] = $bouser->orgname . ' :: ' . 
lang('Logout');
+                }
                $tpl_vars['login_url'] = 'logout.php';
        }
        else




reply via email to

[Prev in Thread] Current Thread [Next in Thread]