SF.net SVN: postfixadmin:[933] trunk/scripts/snippets
Brought to you by:
christian_boltz,
gingerdog
From: <va...@us...> - 2011-01-02 14:16:25
|
Revision: 933 http://postfixadmin.svn.sourceforge.net/postfixadmin/?rev=933&view=rev Author: valkum Date: 2011-01-02 14:16:19 +0000 (Sun, 02 Jan 2011) Log Message: ----------- added some things to model class added user_model.php for user handling added user_controller.php for controlling user missgin view for output. Modified Paths: -------------- trunk/scripts/snippets/model.php Added Paths: ----------- trunk/scripts/snippets/user_controller.php trunk/scripts/snippets/user_model.php Modified: trunk/scripts/snippets/model.php =================================================================== --- trunk/scripts/snippets/model.php 2011-01-01 04:07:39 UTC (rev 932) +++ trunk/scripts/snippets/model.php 2011-01-02 14:16:19 UTC (rev 933) @@ -1,42 +1,63 @@ <?php -class model { +class Model { public $errormsg = array(); - private $table = array(); - private $columns = array(); - private $values = array(); - + protected $table; + protected $columns = array(); + protected $values = array(); /** * id of database entry * @access private */ - private $id; - + protected $id; + protected $column_id; - public save() { + public function save() { $db = new Database; #Pseudecode if new - $db->insert($this->table, $this->values); + $db->insert( $this->table, $this->values ); #pseudocode else $db->update( $this->table, $this->id, $this->values ); } - public load( $parameter = array() ) { - ##pseudocode if where is key in parameters + public function load( $parameter = array() ) { + $sql = ''; + $db = new Database; + if (array_key_exists( 'where', $parameter) ) { $w = $parameters['where']; # where = array('column', 'value' ) - $sql = " WHERE $where['column'] = $where['value']"; - ## elseif limit is key in parameters - $l = $parameter['limit'] - $sq = " LIMIT $l[1], $l[2]"; + $sql .= " WHERE $w[0] = $w[1]"; + } elseif ( array_key_exists('limit', $parameter ) ) { + $l = $parameter['limit'] # limit = array(start, length) + $sql .= " LIMIT $l[0], $l[1]"; + } - $db->query("SELECT * FROM $this->table $sql"); + $this->query = $db->query("SELECT * FROM \{ $this->table \} $sql"); } + + public function delete( $parameter = array() ) { + + } + public function Assoc() { + $db = new Database(); + return $db->getAssoc($this->query); + } + public function Array() { + $db = new Database(); + return $db->getArray($this->query); + } + public function Object() { + $db = new Database(); + return $db->getObject($this->query); + } + public function Row() { + $db = new Database(); + return $db->getRow($this->query); + } - } Added: trunk/scripts/snippets/user_controller.php =================================================================== --- trunk/scripts/snippets/user_controller.php (rev 0) +++ trunk/scripts/snippets/user_controller.php 2011-01-02 14:16:19 UTC (rev 933) @@ -0,0 +1,60 @@ +<?php + + +class UserController extends Controller { + + + + public function view($id = NULL) { + if ($id != NULL) { + $this->User->load( array( 'where' => array( $this->User->coloumn_id, $id ) ) ); + } else { + $this->Userload(); + } + + //function for sending the layout the arg $this->User->Assoc(); + //return $this->User->Assoc(); + } + public function edit($id) { + if($id == NULL) { + $this->errormsg[] = 'The User is nonexistent.'; + return false; + } + $this->User->load(array( 'where' => array( $this->User->coloumn_id, $id ))); + //function for sending the layout the arg $this->User->Assoc(); + + //postswtich + //bla bla smarty stuff for getting the values + //$this->User->values = array('fr...@ex...', 'hased HMAC_MD5 PW', 'Fritz', '/home/fritz/maildir', 51200000, 'fritz', 'example.com', '{[CREATED]}', '{[MODIFIED]}'); {} = Model should replace something, [] = constant not tablenames + + if( ! $this->User->save() ) { + $this->errormsg[] = 'The data can't be saved.'; + return false; + } + + //redirect to view($id) + } + + public function add() { + + + //only if $_POST of $_GET + + //bla bla smarty stuff for filling the values + //$this->User->values = array('fr...@ex...', 'hased HMAC_MD5 PW', 'Fritz', '/home/fritz/maildir', 51200000, 'fritz', 'example.com', '{[CREATED]}', '{[MODIFIED]}'); {} = Model should replace something, [] = constant not tablenames + + if( ! $this->User->save() ) { + $this->errormsg[] = 'The data can't be saved.'; + return false; + } + //redirect to view($id) + } + public function delete($id) { + + } + public function activate() { + + } + public function deactivate() { + + } \ No newline at end of file Added: trunk/scripts/snippets/user_model.php =================================================================== --- trunk/scripts/snippets/user_model.php (rev 0) +++ trunk/scripts/snippets/user_model.php 2011-01-02 14:16:19 UTC (rev 933) @@ -0,0 +1,24 @@ +<?php + + +class UserModel extends Model { + + + + public function __construct() { + $this->table = 'mailbox'; + $this->columns = array('username' => array('varchar(255)', false), + 'password' => array('varchar(255)', false), + 'name' => array('varchar(255)', false), + 'maildir' => array('varchar(255)', false), + 'quota' => array('bigint', false, 0), + 'local_part' => array('varchar(255)', false), + 'domain' => array('varchar(255)', false), + 'created' => array('datetime', false), + 'modified' => array('datetime', false), + 'active' => array('tinyint(1)', false, 1) ); + $this->coloumn_id = 'username'; + } + +} + \ No newline at end of file This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |