WEBTIST Logo    
   
Webtist Modul Dokumentation

[Startseite]  [webtist.pm]  [content.pm]  [dirindex.pm]  [gb.pm]  [lebenslauf.pm]  [meta.pm]  [navigation.pm]  [shop.pm]  [sysadm.pm]  [ticker.pm]  [tools.pm]  [user.pm] 


Anbei ein kleiner Auszug aus unserer Moduldokumentation
die Basis unseres Webtist CMS Systems
Das System setzen wir erfolgreich seit Jahren
bei unseren Geschäftspartnern ein, es wird stets weiterentwickelt
und der Technik entsprechend angepasst.

webtist::user.pm webtist::user

NAME

 webtist::user.pm 

DESCRIPTION

 Modulbeschreibung user

 Version 1.26
 Userverwaltung Anmeldung Abmeldung Passwort Mail und Berechtigungspruefung

AUTOR

 Marc Hanschur, Space4Data / WEBTIST [marc@hanschur.de]

SYNOPSIS

 nachfolgende Module werden benoetigt
 webtist
 DBI

 Aufruf
  use webtist::user;
  $webtist::user = new webtist::user();

 Mehrsprachigkeit Name "USR"
 Mehrsprachigkeit fuer Mailtemplate "USRMTMPL"

 Definitionen in der web.cfg
 USROK => 1=ja 0=nein diese Variable wird als Zugriff aus anderen Modulen verwendet
 USRDB => welche Datenbank wird verwendet (dbi:mysql:space4data:localhost)
 USRDBSID => bei Oracle wird dieser ben�igt (wert TCKDB dbi:oracle:host=xx wert TCKDBSID sid=db) bitte nur
            definieren wenn eine Oracle als DB diensne soll
 USRDBUSR => welcher User hat select rechte auf die DB (Username)
 USRDBPASS => wie lautet das Passwort des Users (Passwort)
 USRPASSMAILTMPL => Passwort mailtemplate
 USRSTAT*MAILTMPL => die Mailtemplates der verschiedenen Statis (* = 0,1,2,3)

 Tabellenstruktur von der Userverwaltung
 CREATE TABLE fldval (
  fldval_usr_nickname varchar(20) NOT NULL default '',
  fldval_usrfld_id varchar(20) NOT NULL default '',
  fldval_value varchar(70) NOT NULL default '',
  KEY fldval_usr_nickname (fldval_usr_nickname),
  KEY fldval_usrfld_id (fldval_usrfld_id),
  KEY fldval_value (fldval_value)
 ) TYPE=MyISAM;

 CREATE TABLE grpval (
  grpval_grp_id varchar(20) NOT NULL default '',
  grpval_usrfld_id varchar(20) NOT NULL default '',
  grpval_value varchar(70) NOT NULL default '',
  KEY grpval_grp_id (grpval_grp_id),
  KEY grpval_usrfld_id (grpval_usrfld_id),
  KEY grpval_value (grpval_value)
 ) TYPE=MyISAM;

 CREATE TABLE usr (
  usr_nickname varchar(20) NOT NULL default '',
  usr_pwd varchar(20) default NULL,
  usr_grp_id varchar(20) default NULL,
  usr_stat int(11) default '1',
  usr_name1 varchar(70) default NULL,
  usr_name2 varchar(70) default NULL,
  usr_adr1 varchar(70) default NULL,
  usr_adr2 varchar(70) default NULL,
  usr_adr3 varchar(70) default NULL,
  usr_zip varchar(10) default NULL,
  usr_city varchar(70) default NULL,
  usr_country_id char(2) default NULL,
  usr_lang_id char(3) default NULL,
  usr_phone1 varchar(35) default NULL,
  usr_phone2 varchar(35) default NULL,
  usr_phone3 varchar(35) default NULL,
  usr_fax1 varchar(35) default NULL,
  usr_fax2 varchar(35) default NULL,
  usr_email1 varchar(70) default NULL,
  usr_email2 varchar(70) default NULL,
  usr_comment varchar(255) default NULL,
  usr_lastuse timestamp(14) NOT NULL,
  usr_failedlogins int(11) default NULL,
  usr_valuemail enum('0','1') NOT NULL default '0',
  PRIMARY KEY  (usr_nickname),
  UNIQUE KEY usr_nickname (usr_nickname)
 ) TYPE=MyISAM;

 CREATE TABLE wusr (
  wusr_wwwid varchar(255) NOT NULL default '',
  wusr_usr_nickname varchar(20) default NULL,
  wusr_timestamp timestamp(14) NOT NULL,
  PRIMARY KEY  (wusr_wwwid),
  UNIQUE KEY wusr_wwwid (wusr_wwwid)
 ) TYPE=MyISAM;

METHODS

new

 Konstruktor

announcelogout

 Anmeldefenster / Abmeldebutton und mehr (Password vergessen) Funktionen

 Aufruf
 &announcelogout($template)

 Parameter
 $template => das zu �fnende Template mit Pfadangabe

 Definitionen in der web.cfg
 USRANMELD => Anmelde und Logout Template
 USRPASSMAILTMPL => Mailtemplate fuer Passwordversand
  Subject muss in folgender Form enthalten Sein <mailsubject>TEXT oder Mehrsprachigkeit</mailsubject>
 USRMAILFROM => Name des Absenders
 USRMAILFROMADR => Mailadresse des Absenders
 USRMAXFAILEDLOGINS => Maximale anzahl ab wann das Profil inaktiv gesetzt wird

 zusaezlich sollte es ein File im Configverzeichnis geben das wie
 folgt bennant ist (usrmeldung.txt) dieses file enth�t Meldungstexte wie
 "Useranmeldung erfolgreich" dieser kann auch in Mehrsprachigkeit gestaltet werden
 siehe webtist::weblang
 Definitionen in der usrmeldung.txt
 USRANNOUCNCEOK => Anmeldungstext erfolgreiche Anmeldung
 USRPWDMAILOK => Passwortversand OK
 USRNICKNOTFOUND => Usernickname nicht gefunden
 USRANNOUCNCEERROR => Fehler passwort oder Benutzername falsch oder Profil inaktiv
 USRLOGOUTOK => Userlogout war erfolgreich
 USRDBNOTOK => DB Handle nicht OK
 USRNICKNAMENOTOK => Nickname ist ungueltig
 USRPASSWDNOTOK => Password ist ungueltig

 Rueckgabe
 Skalar mit entsprechendem HTML Inhalt (Formularfelder fuer An/Abmeldung)

deloldwusr

 l�cht alle alten User aus der wusr TBL

 Aufruf
 &deloldwusr($zeit)

 Parameter
 $zeit => Max User Login

 in web.cfg
 USRLOGOUTTIME => in Min wie z.B. 60 = 60 Minuten

 Rueckgabe
 keine Rckgabe

usrfields

 Werte aus der Tabelle usrfields holen und in Globale Variable webtist
 oder als Hasch Rckgabewert

 Aufruf
 &usrfields($sessionidnickname,$todo)

 Parameter
 $qsessionidnickname => die Session ID des Users oder der Username
 $todo => was soll gemacht werden
  0 oder nix => alle Values werden in Form USR_xxx = Inhalt (Value) in die Globalen Webtist param abgelegt
  1 => der Hasch mit den Werten wird zurckgegeben (Session ID wird uebergeben)
  2 => der Hash mit den Werten wird zurueckgegeben (User ID wir uebergeben)

 Definitionen in der web.cfg
 siehe SUB announcelogout

 Rueckgabe
 nur in Fall 1 wird der Hasch zurueckgegeben

getnickname

 Ueber die Session ID den Usernickm?name holen
 Aufruf
 &getnickname($qsessionid)

 Parameter
 $qsessionid => die Session ID

 Definitionen in der web.cfg
 siehe SUB announcelogout

 Rueckgabe
 als Skalar der Username

getusrdata

 Auslesen der Userdaten aus Tabelle usrmgmt.usr

 Aufruf
 &getusrdata($user)

 Parameter
 $user   => User dessen Daten ausgelesen werden

 Definitionen in der web.cfg
 siehe SUB announcelogout
 USRUSRFLD;usr_pwd:usr_grp_id;mehrere felder durch : getrennt angeben;

 Rueckgabe
 Hasch mit Texten als Inhalt zugriff

chkusrname

 Checken des Usernames auf gueltigkeit

 Aufruf
 &chkusrname($name)

 Parameter
 $name => der Username

 Definitionen in der web.cfg

 Rueckgabe
 wenn der Username OK ist wird 0 zurckgegeben ansonsten 1

chkusrpass

 Checken des Userpasswortes auf gueltigkeit

 Aufruf
 &chkusrpass($pass)

 Parameter
 $pass => das Password

 Definitionen in der web.cfg

 Rueckgabe
 wenn das Passwort OK ist wird 0 zurckgegeben ansonsten 1

chknickname

 Checkt den Nickname auf Vorhandensein in der DB

 Aufruf
 &chknickname($nickname)

 Parameter
 $nickname => der Nickname des Users

 Rueckgabe
 Skalar mit 1 fuer fehler und 0 fuer OK

chkusr

 Userueberpruefung

 Aufruf
 &chkusr($morequery,$qnickname)

 Parameter
 $morequery => ein weiteres SQL Query (incl WHERE)
 $qnickname => welcher nickname soll auf Berechtigung gepueft werden

 Rueckgabe
 Skalar mit 1 fuer fehler und 0 fuer OK

saveusrlastquery

 User last Query

 Aufruf
 &saveusrlastquery($query,$qwwwid)

 Parameter
 $query => SQL Query
 $qwwwid => wwwid des Users

 Rueckgabe
 Array[0] mit 1 fuer fehler und 0 fuer OK
 Array[1] SQL

getuserlastquery

 Ueber die Session ID das letzte query holen
 Aufruf
 &getuserlastquery($qsessionid)

 Parameter
 $qsessionid => die Session ID

 Definitionen in der web.cfg
 siehe SUB announcelogout

 Rueckgabe
 als Skalar der letzte query

usrpopup

 Userpopup

 Aufruf
 &usrpopup($db,$dbsid,$dbusr,$dbpass,$morequery,$qnickname)

 Parameter
 $db => Datenbank (
 $dbsid => Datenbank Sid (nur bei Oracle)
 $dbusr => Datenbank user
 $dbpass => Datenbank passwort
 $morequery => ein weiteres SQL Query (incl WHERE)
 $qnickname => welcher nickname soll ggf selectiert werden

 Rueckgabe
 die einzelnen "<option ...></option> angaben in einem Skalar

usrgrpidpopup

 GruppenID aus DB fuer POP UP Menue in Benutzerverwaltung

 Aufruf
 &usrgrpidpopup($db,$dbusr,$dbpass,$grpid)

 Parameter
 $db => Datenbank (
 $dbusr => Datenbank user
 $dbpass => Datenbank passwort
 $grpusrid => zu welcher Gruppe geh�rt der User
 $qgrpid => welche Gruppen ID soll selectiert werden wird meist per Query uebergeben
 $morequery => fuer die erweiterung

 Rueckgabe
 die einzelnen "<option ...></option> angaben in einem Skalar

WARNING

 ich kann im Moment keine Warnungen erkennen

BUGS

 Transparent wird durch eine Remotedelegationkerbe vollendet, die unter bestimmten Umstaeden brechen
 konnte.  Wenn dieses Ihnen geschieht, informieren Sie mich bitte.
 Informieren Sie mich, wenn Sie einiges finden.

ACKNOWLEDGEMENTS

 Thanks to Herz Susanne, Andreas Kaspar for inspiration, laughs and all 'round good times;
 and Linus Torvalds for all the great software.

LICENSE

 Dieser Code ist freie Software;  Sie koenen ihn neuverteilen und/oder ihn unter den gleichen
 Bezeichnungen wie Perl selbst aedern.

DISCLAIMER

 Dieses ist freie Software.  Wenn es bricht, besitzen Sie beide Teile.

POD ERRORS

Hey! The above document had some coding errors, which are explained below:

Around line 46:

Non-ASCII character seen before =encoding in 'Namensl�ge'. Assuming UTF-8



[Startseite]  [webtist.pm]  [content.pm]  [dirindex.pm]  [gb.pm]  [lebenslauf.pm]  [meta.pm]  [navigation.pm]  [shop.pm]  [sysadm.pm]  [ticker.pm]  [tools.pm]  [user.pm] 



www.webtist.org
 
   
  Balken