X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=classes%2FProfile_prefs.php;h=72a707cae86813149afad1297b1afd0c8a1e2bcb;hb=f9698598c6aa74d5f5e060989871f8e90d310adf;hp=32da3b11b854da062c3de473b73db7da54b32531;hpb=b67a611ca76a9665f87c1670a2d155dd23ef502a;p=quix0rs-gnu-social.git diff --git a/classes/Profile_prefs.php b/classes/Profile_prefs.php index 32da3b11b8..72a707cae8 100644 --- a/classes/Profile_prefs.php +++ b/classes/Profile_prefs.php @@ -31,8 +31,8 @@ class Profile_prefs extends Managed_DataObject { public $__table = 'profile_prefs'; // table name public $profile_id; // int(4) primary_key not_null - public $namespace; // varchar(255) not_null - public $topic; // varchar(255) not_null + public $namespace; // varchar(191) not_null + public $topic; // varchar(191) not_null public $data; // text public $created; // datetime not_null default_0000-00-00%2000%3A00%3A00 public $modified; // timestamp not_null default_CURRENT_TIMESTAMP @@ -42,8 +42,8 @@ class Profile_prefs extends Managed_DataObject return array( 'fields' => array( 'profile_id' => array('type' => 'int', 'not null' => true, 'description' => 'user'), - 'namespace' => array('type' => 'varchar', 'length' => 255, 'not null' => true, 'description' => 'namespace, like pluginname or category'), - 'topic' => array('type' => 'varchar', 'length' => 255, 'not null' => true, 'description' => 'preference key, i.e. description, age...'), + 'namespace' => array('type' => 'varchar', 'length' => 191, 'not null' => true, 'description' => 'namespace, like pluginname or category'), + 'topic' => array('type' => 'varchar', 'length' => 191, 'not null' => true, 'description' => 'preference key, i.e. description, age...'), 'data' => array('type' => 'blob', 'description' => 'topic data, may be anything'), 'created' => array('type' => 'datetime', 'not null' => true, 'description' => 'date this record was created'), 'modified' => array('type' => 'timestamp', 'not null' => true, 'description' => 'date this record was modified'), @@ -62,11 +62,11 @@ class Profile_prefs extends Managed_DataObject { if (empty($topic)) { $prefs = new Profile_prefs(); - $prefs->profile_id = $profile->id; + $prefs->profile_id = $profile->getID(); $prefs->namespace = $namespace; $prefs->find(); } else { - $prefs = self::pivotGet('profile_id', $profile->id, array('namespace'=>$namespace, 'topic'=>$topic)); + $prefs = self::pivotGet('profile_id', $profile->getID(), array('namespace'=>$namespace, 'topic'=>$topic)); } if (empty($prefs->N)) { @@ -85,7 +85,7 @@ class Profile_prefs extends Managed_DataObject static function getAll(Profile $profile) { try { - $prefs = self::listFind('profile_id', $profile->id); + $prefs = self::listFind('profile_id', $profile->getID()); } catch (NoResultException $e) { return array(); } @@ -101,15 +101,9 @@ class Profile_prefs extends Managed_DataObject } static function getTopic(Profile $profile, $namespace, $topic) { - $pref = new Profile_prefs; - $pref->profile_id = $profile->id; - $pref->namespace = $namespace; - $pref->topic = $topic; - - if (!$pref->find(true)) { - throw new NoResultException($pref); - } - return $pref; + return Profile_prefs::getByPK(array('profile_id' => $profile->getID(), + 'namespace' => $namespace, + 'topic' => $topic)); } static function getData(Profile $profile, $namespace, $topic, $def=null) { @@ -164,10 +158,11 @@ class Profile_prefs extends Managed_DataObject } $pref = new Profile_prefs(); - $pref->profile_id = $profile->id; + $pref->profile_id = $profile->getID(); $pref->namespace = $namespace; $pref->topic = $topic; $pref->data = $data; + $pref->created = common_sql_now(); if ($pref->insert() === false) { throw new ServerException('Could not save profile preference.');