Beispiel #1
0
	/**
	 * Load categories for a specific user.
	 *
	 * @param array			$ids		The category ids to load.
	 * @param KunenaUser	$user
	 */
	static protected function loadCategories(array $ids, KunenaUser $user)
	{
		foreach ($ids as $i => $id)
		{
			$iid = intval($id);
			if ($iid != $id || isset(self::$_instances [$user->userid][$id]))
			{
				unset($ids[$i]);
			}
		}

		if (empty($ids))
		{
			return;
		}

		$idlist = implode(',', $ids);
		$db = JFactory::getDBO ();
		$query = "SELECT * FROM #__kunena_user_categories WHERE user_id={$db->quote($user->userid)} AND category_id IN ({$idlist})";
		$db->setQuery ( $query );
		$results = (array) $db->loadAssocList ('category_id');
		KunenaError::checkDatabaseError ();

		foreach ( $ids as $id )
		{
			if (isset($results[$id]))
			{
				$instance = new KunenaForumCategoryUser ();
				$instance->bind ( $results[$id] );
				$instance->exists(true);
				self::$_instances [$user->userid][$id] = $instance;
			}
			else
			{
				self::$_instances [$user->userid][$id] = new KunenaForumCategoryUser ($id, $user);
			}
		}

		unset ($results);
	}
 /**
  * Test delete()
  *
  * @param KunenaForumCategoryUser $categoryuser
  * @depends testGetInstance
  */
 public function testDelete(KunenaForumCategoryUser $categoryuser)
 {
     $this->assertTrue($categoryuser->delete());
     $this->assertFalse($categoryuser->exists());
 }