summaryrefslogtreecommitdiff
path: root/classes
diff options
context:
space:
mode:
authorEvan Prodromou <evan@prodromou.name>2008-05-15 12:28:44 -0400
committerEvan Prodromou <evan@prodromou.name>2008-05-15 12:28:44 -0400
commitfac522f4d7cce9a35e605fac2bba0b2d23616ad0 (patch)
tree3f4bc68a5f9fce6f9d1cb597bb0834ded3eddd88 /classes
parentb6cfd2dffeeb733f07818db5f4ce11d4b3d51771 (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.php24
-rw-r--r--classes/Notice.php1
-rw-r--r--classes/Profile.php27
-rw-r--r--classes/User.php1
-rw-r--r--classes/stoica.ini15
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