openrat-cms

Unnamed repository; edit this file 'description' to name the repository.
Log | Files | Refs

commit a300efd75a408b89986c7f92c0e47e379dbf4dae
parent 6fa07e49f77277e11c781c3e8722a54ce9583923
Author: dankert <devnull@localhost>
Date:   Sat,  4 Sep 2010 00:49:53 +0200

Neue Methode 'count()' zum schnelleren Ermitteln der Anzahl.

Diffstat:
objectClasses/Language.class.php | 26++++++++++++++++++++++++++
objectClasses/Model.class.php | 22++++++++++++++++++++++
2 files changed, 48 insertions(+), 0 deletions(-)

diff --git a/objectClasses/Language.class.php b/objectClasses/Language.class.php @@ -86,6 +86,32 @@ class Language } + /** + * Ermittelt die Anzahl aller Sprachen zum aktuellen Projekt. + */ + function count() + { + global $SESS; + $db = db_connection(); + + $sql = new Sql( <<<SQL + SELECT count(*) FROM {t_language} + WHERE projectid = {projectid} +SQL +); + + if ( !empty($this->projectid) ) + $sql->setInt('projectid',$this->projectid ); + else + { + $project = Session::getProject(); + $sql->setInt('projectid',$project->projectid); + } + + return $db->getOne( $sql ); + } + + // Lesen aus der Datenbank function load() { diff --git a/objectClasses/Model.class.php b/objectClasses/Model.class.php @@ -84,6 +84,28 @@ class Model return $db->getAssoc( $sql ); } + + + /** + * Bestimmt die Anzahl aller Varianten fuer das aktuelle Projekt. + */ + function count() + { + global $SESS; + $db = db_connection(); + + $sql = new Sql( <<<SQL + SELECT count(*) FROM {t_projectmodel} + WHERE projectid = {projectid} +SQL +); + if ( isset($this) ) + $sql->setInt('projectid',$this->projectid ); + else $sql->setInt('projectid',$SESS['projectid'] ); + + return $db->getOne( $sql ); + } + /** * Lesen aus der Datenbank