diff options
-rw-r--r-- | models/User.php | 86 |
1 files changed, 4 insertions, 82 deletions
diff --git a/models/User.php b/models/User.php index 6408f1c..cacda49 100644 --- a/models/User.php +++ b/models/User.php @@ -89,12 +89,7 @@ class User extends \lithium\data\Model { joindate = today, accesslevel = "user" */ - public function updateuser($entity, $data) - { - $conditions = array('_id' => $entity->_id, 'state' => 'default'); - $options = array('multiple' => false, 'safe' => true, 'upsert'=>true); - return static::update($data, $conditions, $options); - } + /** * Creates a post and stores it into the appropriate user(s) array(s) @@ -109,9 +104,9 @@ class User extends \lithium\data\Model { //TODO add validators to these methods/models //Create the post - $post = Post::create(array('datetime' => new MongoDate(), + $post = Post::create(array(//'datetime' => new MongoDate(), 'username' => $entity->username, - 'user_id' => $entity->_id, + 'user_id' => $entity->id, 'level' => null)); //1. Parse //Break the string into an array of words @@ -148,60 +143,9 @@ class User extends \lithium\data\Model { //Save the post to the posts database. $post->save(); - - //If the user has friends - if (count($entity->friends) > 0) - { - //Save this posts to the feed of all the Users Friends - $post->storeAll($entity->friends); - } - //Add this post to the user's feed array - $post->store($entity); - - - - - //$save = $entity->save(null, array('validate' => false)); - /* In the future, there should be a way to make this method quicker and non-blocking*/ - //For each friend, post it in their feed (friends is an array of usernames as strings) - /*if (!empty($entity->friends)) - { - foreach ($entity->friends as $friend) - { - //Grab the friend from the database - $curFriend = User::find('first', array('conditions' => array('username' => $friend))); - - //Add the post to their feed. - //Array unshift puts the new post at the first element of the feed array. - $curFriend->feed = array_unshift($post->_id, $curFriend->feed); - - //Save the friend to the database, - $curFriend->save(array('validates' => false)); - - //Eventually, we can call a node.js endpoint here - //To tell all subscribers that there is a new a post - //Something like "curl POST $post->_id nodeserver://endpoint/myFeed" - } - } */ } /** - * Store's the post to the specified user's feed - * @param User $user The user to add the post to - * @param Post $post The post too add to the feed - * @return boolean True if the operation sucsceeded, false otherwise - */ - private function storePost($user, $post) - { - $updateData = array('$push' => array('feed' => $post['_id']->__toString())); - $conditions = array('_id' => $user['_id']); - $result = User::update($updateData, $conditions, array('atomic' => false)); - - return $result; - } - - - /** * Returns the appropriate post level for the post * @see app\models\Post * @param User $user The user instance of the user that the post will be posted to @@ -275,29 +219,7 @@ class User extends \lithium\data\Model { 'level' => 'public', ); - //If the user passed in options - if (!empty($options)) - { - //merge the options with the defaults (upsert them) - array_merge($defaults, $options); - } - - //var_dump($entity); - //exit(); - //If the user has more posts than the limit, return the limit, if the have less return - $count = (count($entity->feed) >= $defaults['limit']) ? $defaults['limit'] : count($entity->feed); - if ($count == 0) - { - return false; - } - //else - var_dump(Post::find('all', array('conditions' => array('$in' => $entity->feed)))); - exit(); - for ($i = 0; $i < $count; $i++) - { - $posts[] = Post::find('all', array('conditions' => array('$in' => $entity->feed))); - $posts[] = Post::find($qaulifier, array('conditions' => array('_id' => $entity->feed[$i], 'level' => $defaults[level]))); - } + //If the user passed in options return $posts; } |