diff options
author | Evan Prodromou <evan@prodromou.name> | 2008-05-15 12:28:44 -0400 |
---|---|---|
committer | Evan Prodromou <evan@prodromou.name> | 2008-05-15 12:28:44 -0400 |
commit | fac522f4d7cce9a35e605fac2bba0b2d23616ad0 (patch) | |
tree | 3f4bc68a5f9fce6f9d1cb597bb0834ded3eddd88 /classes | |
parent | b6cfd2dffeeb733f07818db5f4ce11d4b3d51771 (diff) |
settings and avatars
Did considerable work on the settings section.
Redesigned the DB to allow avatars. Each avatar image has a size and
an URL. There can be multiple avatars per profile, just different sizes.
Added accessors in Profile for avatar. Show the avatar in lots of
places, where it makes sense. Constants for avatar sizes in common.php.
darcs-hash:20080515162844-84dde-fe0630366e247c02ca8ca9d1cc6b963cfce57a26.gz
Diffstat (limited to 'classes')
-rw-r--r-- | classes/Avatar.php | 24 | ||||
-rw-r--r-- | classes/Notice.php | 1 | ||||
-rw-r--r-- | classes/Profile.php | 27 | ||||
-rw-r--r-- | classes/User.php | 1 | ||||
-rw-r--r-- | classes/stoica.ini | 15 |
5 files changed, 66 insertions, 2 deletions
diff --git a/classes/Avatar.php b/classes/Avatar.php new file mode 100644 index 000000000..222725b48 --- /dev/null +++ b/classes/Avatar.php @@ -0,0 +1,24 @@ +<?php +/** + * Table Definition for avatar + */ +require_once 'DB/DataObject.php'; + +class Avatar extends DB_DataObject +{ + ###START_AUTOCODE + /* the code below is auto generated do not remove the above tag */ + + public $__table = 'avatar'; // table name + public $profile_id; // int(4) primary_key not_null + public $width; // int(4) primary_key not_null + public $height; // int(4) primary_key not_null + public $original; // tinyint(1) + public $mediatype; // varchar(32) not_null + + /* Static get */ + function staticGet($k,$v=NULL) { return DB_DataObject::staticGet('Avatar',$k,$v); } + + /* the code above is auto generated do not remove the tag below */ + ###END_AUTOCODE +} diff --git a/classes/Notice.php b/classes/Notice.php index 94b06deb3..538ae9c01 100644 --- a/classes/Notice.php +++ b/classes/Notice.php @@ -33,7 +33,6 @@ class Notice extends DB_DataObject public $id; // int(4) primary_key not_null public $profile_id; // int(4) not_null public $content; // varchar(140) - public $rendered; // varchar(140) public $url; // varchar(255) public $created; // datetime() not_null public $modified; // timestamp() not_null default_CURRENT_TIMESTAMP diff --git a/classes/Profile.php b/classes/Profile.php index a5a565c69..4f756856e 100644 --- a/classes/Profile.php +++ b/classes/Profile.php @@ -45,4 +45,31 @@ class Profile extends DB_DataObject /* the code above is auto generated do not remove the tag below */ ###END_AUTOCODE + + function getAvatar($width, $height=NULL) { + $avatar = DB_DataObject::factory('avatar'); + $avatar->profile_id = $this->id; + $avatar->width = $width; + if (is_null($height)) { + $avatar->height = $width; + } else { + $avatar->height = $height; + } + if ($avatar->find(true)) { + return $avatar; + } else { + return NULL; + } + } + + function getOriginalAvatar() { + $avatar = DB_DataObject::factory('avatar'); + $avatar->profile_id = $this->id; + $avatar->original = true; + if ($avatar->find(true)) { + return $avatar; + } else { + return NULL; + } + } } diff --git a/classes/User.php b/classes/User.php index e7d297b3c..2b8610a65 100644 --- a/classes/User.php +++ b/classes/User.php @@ -30,6 +30,7 @@ class User extends DB_DataObject public $__table = 'user'; // table name public $id; // int(4) primary_key not_null + public $nickname; // varchar(64) unique_key public $password; // varchar(255) public $email; // varchar(255) unique_key public $created; // datetime() not_null diff --git a/classes/stoica.ini b/classes/stoica.ini index 52686bcb5..6c951fcb9 100644 --- a/classes/stoica.ini +++ b/classes/stoica.ini @@ -1,9 +1,20 @@ +[avatar] +profile_id = 129 +width = 129 +height = 129 +original = 17 +mediatype = 130 + +[avatar__keys] +profile_id = K +width = K +height = K + [notice] id = 129 profile_id = 129 content = 2 -rendered = 2 url = 2 created = 142 modified = 384 @@ -48,6 +59,7 @@ subscribed = K [user] id = 129 +nickname = 2 password = 2 email = 2 created = 142 @@ -55,4 +67,5 @@ modified = 384 [user__keys] id = K +nickname = U email = U |