public function rate_collectionAction() { $request = $this->getRequest(); if (JO_Session::get('user_id') && $request->isPost()) { $collectionID = $request->getRequest('rate_collection'); $collection = Model_Collections::get($collectionID); if ($request->getPost('rate')) { $rating = floatval($request->getPost('rate')); } if (!is_numeric($rating) || $rating > 5) { $rating = 5; } elseif ($rating < 1) { $rating = 1; } $collection = Model_Collections::rate($collection, $collectionID, $rating); $response = array('error' => false, 'id' => $collectionID, 'votes' => $collection['votes'] . ' ' . ($collection['votes'] == 1 ? $this->translate('Vote') : $this->translate('Votes')), 'message' => str_repeat('<img src="data/themes/images/star.png" alt="Star" />', $collection['rating'])); die(json_encode($response)); } }