Language Klassenreferenz

Aufstellung aller Elemente

Öffentliche Methoden

 Language ($languageid='')
 available ($id)
 getAll ()
 load ()
 save ()
 getProperties ()
 add ($isocode='')
 setDefault ()
 getDefaultId ()
 delete ()

Öffentliche Attribute

 $languageid = 0
 $error = ''
 $projectid
 $name = ''
 $isoCode = ''
 $isDefault = false


Ausführliche Beschreibung

Definiert in Zeile 31 der Datei Language.class.php.


Dokumentation der Elementfunktionen

Language::add ( isocode = ''  ) 

Neue Sprache hinzuf?gen

Definiert in Zeile 146 der Datei Language.class.php.

Benutzt $db, $SESS, db_connection() und GlobalFunctions::getIsoCodes().

00147      {
00148           global $SESS;
00149           global $iso;
00150           $db = db_connection();
00151 
00152           if   ( $isocode != '' )
00153           {
00154                // Kleiner Trick, damit "no" (Norwegen) in der .ini-Datei stehen kann
00155                $isocode = str_replace('_','',$isocode);
00156                
00157                $this->isocode = $isocode;
00158                $codes = GlobalFunctions::getIsoCodes();
00159                $this->name    = $codes[ $isocode ];
00160           }
00161 
00162           $sql = new Sql('SELECT MAX(id) FROM {t_language}');
00163           $this->languageid = intval($db->getOne($sql->query))+1;
00164 
00165           // Sprache hinzuf?gen
00166           $sql = new Sql( 'INSERT INTO {t_language} '.
00167                           '(id,projectid,name,isocode,is_default) VALUES( {languageid},{projectid},{name},{isocode},0 )');
00168           $sql->setInt   ('languageid',$this->languageid );
00169           $sql->setInt   ('projectid' ,$this->projectid  );
00170           $sql->setString('name'      ,$this->name       );
00171           $sql->setString('isocode'   ,$this->isoCode    );
00172 
00173           // Datenbankbefehl ausfuehren
00174           $db->query( $sql->query );
00175      }

Language::available ( id  ) 

Stellt fest, ob die angegebene Id existiert.

Definiert in Zeile 58 der Datei Language.class.php.

Benutzt $db und db_connection().

Wird benutzt von IndexAction::evaluateRequestVars() und IndexAction::login().

00059      {
00060           $db = db_connection();
00061 
00062           $sql = new Sql('SELECT 1 FROM {t_language} '.
00063                          ' WHERE id={id}');
00064           $sql->setInt('id' ,$id  );
00065 
00066           return intval($db->getOne($sql->query)) == 1;
00067      }

Language::delete (  ) 

Definiert in Zeile 222 der Datei Language.class.php.

Benutzt $db und db_connection().

00223      {
00224           $db = db_connection();
00225 
00226           // Sprache l?schen
00227 //        $sql = new Sql( 'SELECT COUNT(*) FROM {t_language} WHERE projectid={projectid}' );
00228 //        $sql->setInt( 'projectid',$this->projectid );
00229 //        $count = $db->getOne( $sql->query );
00230 //        
00231 //        // Nur l?schen, wenn es mindestens 2 Sprachen gibt
00232 //        if   ( $count >= 2 )
00233 //        {
00234                // Inhalte mit dieser Sprache l?schen
00235                $sql = new Sql( 'DELETE FROM {t_value} WHERE languageid={languageid}' );
00236                $sql->setInt( 'languageid',$this->languageid );
00237                $db->query( $sql->query );
00238 
00239                // Inhalte mit dieser Sprache l?schen
00240                $sql = new Sql( 'DELETE FROM {t_name} WHERE languageid={languageid}' );
00241                $sql->setInt( 'languageid',$this->languageid );
00242                $db->query( $sql->query );
00243 
00244                // Sprache l?schen
00245                $sql = new Sql( 'DELETE FROM {t_language} WHERE id={languageid}' );
00246                $sql->setInt( 'languageid',$this->languageid );
00247                $db->query( $sql->query );
00248 
00249                // Andere Sprache auf "Default" setzen
00250                $sql = new Sql( 'SELECT id FROM {t_language} WHERE projectid={projectid}' );
00251                $sql->setInt( 'projectid',$this->projectid );
00252                $new_default_languageid = $db->getOne( $sql->query );
00253 
00254                $sql = new Sql( 'UPDATE {t_language} SET is_default=1 WHERE id={languageid}' );
00255                $sql->setInt( 'languageid',$new_default_languageid );
00256                $db->query( $sql->query );
00257 //        }
00258      }

Language::getAll (  ) 

Definiert in Zeile 72 der Datei Language.class.php.

Benutzt $db, $SESS, db_connection() und Session::getProject().

Wird benutzt von ObjectAction::aclform(), Page::copyValuesFromPage() und Page::publish().

00073      {
00074           global $SESS;
00075           $db = db_connection();
00076 
00077           $sql = new Sql( "SELECT id,name FROM {t_language} ".
00078                           "   WHERE projectid = {projectid} ".
00079                           "   ORDER BY name" );
00080 
00081           if   ( !empty($this->projectid) )
00082                $sql->setInt('projectid',$this->projectid );
00083           else
00084           {
00085                $project = Session::getProject();
00086                $sql->setInt('projectid',$project->projectid);
00087           }
00088 
00089           return $db->getAssoc( $sql->query );
00090      }

Language::getDefaultId (  ) 

Definiert in Zeile 200 der Datei Language.class.php.

Benutzt $db, $SESS, db_connection() und Session::getProject().

Wird benutzt von TreeAction::load().

00201      {
00202           global $SESS;
00203           $db = db_connection();
00204 
00205           $sql = new Sql( 'SELECT id FROM {t_language} '.
00206                           '  WHERE projectid={projectid}'.
00207                           '   ORDER BY is_default DESC' );
00208 
00209           if   ( isset($this->projectid) )
00210                $sql->setInt('projectid',$this->projectid );
00211           else
00212           {
00213                $project = Session::getProject();
00214                $sql->setInt('projectid',$project->projectid);
00215           }
00216           
00217           return $db->getOne( $sql->query );
00218      }

Language::getProperties (  ) 

Ermitteln aller Eigenschaften dieser Sprache

Rückgabe:
Array

Definiert in Zeile 136 der Datei Language.class.php.

00137      {
00138           return Array( 'name'   =>$this->name,
00139                         'isocode'=>$this->isoCode );
00140      }

Language::Language ( languageid = ''  ) 

Definiert in Zeile 43 der Datei Language.class.php.

Benutzt $languageid und $SESS.

00044      {
00045           global $SESS;
00046 
00047           if   ( is_numeric($languageid) )
00048                $this->languageid = $languageid;
00049 
00050 //        $this->projectid = $SESS['projectid'];
00051      }

Language::load (  ) 

Definiert in Zeile 94 der Datei Language.class.php.

Benutzt $db und Session::getDatabase().

00095      {
00096           $db = Session::getDatabase();
00097 
00098           $sql = new Sql( 'SELECT * FROM {t_language}'.
00099                           ' WHERE id={languageid}' );
00100           $sql->setInt( 'languageid',$this->languageid );
00101 
00102           $row = $db->getRow( $sql->query );
00103 
00104           $this->name      =         $row['name'     ];
00105           $this->isoCode   =         $row['isocode'  ];
00106           $this->projectid = intval( $row['projectid'] );
00107           
00108           $this->isDefault = ( $row['is_default'] == '1' );
00109      }

Language::save (  ) 

Definiert in Zeile 113 der Datei Language.class.php.

Benutzt $db und db_connection().

00114      {
00115           $db = db_connection();
00116 
00117           // Gruppe speichern      
00118           $sql = new Sql( 'UPDATE {t_language} '.
00119                           'SET name      = {name}, '.
00120                           '    isocode   = {isocode} '.
00121                           'WHERE id={languageid}' );
00122           $sql->setString( 'name'     ,$this->name    );
00123           $sql->setString( 'isocode'  ,$this->isoCode );
00124 
00125           $sql->setInt( 'languageid',$this->languageid );
00126 
00127           // Datenbankabfrage ausfuehren
00128           $db->query( $sql->query );
00129      }

Language::setDefault (  ) 

Definiert in Zeile 179 der Datei Language.class.php.

Benutzt $db, $SESS und db_connection().

00180      {
00181           global $SESS;
00182           $db = db_connection();
00183 
00184           // Zuerst alle auf nicht-Standard setzen
00185           $sql = new Sql( 'UPDATE {t_language} '.
00186                           '  SET is_default = 0 '.
00187                           '  WHERE projectid={projectid}' );
00188           $sql->setInt('projectid',$this->projectid );
00189           $db->query( $sql->query );
00190      
00191           // Jetzt die gew?nschte Sprachvariante auf Standard setzen
00192           $sql = new Sql( 'UPDATE {t_language} '.
00193                           '  SET is_default = 1 '.
00194                           '  WHERE id={languageid}' );
00195           $sql->setInt('languageid',$this->languageid );
00196           $db->query( $sql->query );
00197      }


Dokumentation der Datenelemente

Language::$error = ''

Definiert in Zeile 34 der Datei Language.class.php.

Language::$isDefault = false

Definiert in Zeile 39 der Datei Language.class.php.

Language::$isoCode = ''

Definiert in Zeile 38 der Datei Language.class.php.

Language::$languageid = 0

Definiert in Zeile 33 der Datei Language.class.php.

Wird benutzt von Language().

Language::$name = ''

Definiert in Zeile 37 der Datei Language.class.php.

Language::$projectid

Definiert in Zeile 35 der Datei Language.class.php.


Die Dokumentation für diese Klasse wurde erzeugt aufgrund der Datei:

Erzeugt am Thu May 14 00:55:50 2009 für OpenRat von  doxygen 1.5.8