function op_api_activity($activity) { $viewMemberId = sfContext::getInstance()->getUser()->getMemberId(); $member = $activity->getMember(); $images = null; if ($activity->getImages()->count()) { $images = $activity->getImages(); } return array('id' => $activity->getId(), 'member' => op_api_member($member), 'body' => $activity->getBody(), 'body_html' => op_activity_linkification(nl2br(op_api_force_escape($activity->getBody()))), 'uri' => $activity->getUri(), 'source' => $activity->getSource(), 'source_uri' => $activity->getSourceUri(), 'image_url' => !is_null($images) ? sf_image_path($images[0]->getFile(), array('size' => '48x48'), true) : null, 'image_large_url' => !is_null($images) ? sf_image_path($images[0]->getFile(), array(), true) : null, 'created_at' => date('r', strtotime($activity->getCreatedAt()))); }
function op_api_activity($activity) { use_helper('opActivity'); $viewMemberId = sfContext::getInstance()->getUser()->getMemberId(); $member = $activity->getMember(); $images = array(); foreach ($activity->getImages() as $activityImage) { $images[] = array('small_size' => op_activity_image_uri($activityImage, array('size' => '48x48'), true), 'full_size' => op_activity_image_uri($activityImage, array(), true)); } return array('id' => $activity->getId(), 'member' => op_api_member($member), 'body' => $activity->getBody(), 'body_html' => op_activity_linkification(nl2br(op_api_force_escape($activity->getBody()))), 'uri' => $activity->getUri(), 'source' => $activity->getSource(), 'source_uri' => $activity->getSourceUri(), 'image_uris' => $images, 'created_at' => date('r', strtotime($activity->getCreatedAt()))); }
private function createActivityDataByActivityDataAndMemberDataForSearchAPI($activityDataList, $memberData) { $activityIds = array(); foreach ($activityDataList as $activity) { $activityIds[] = $activity->getId(); } $activityImageUrls = $this->findActivityImageUrlsByActivityIds($activityIds); $responseDataList = array(); foreach ($activityDataList as $activity) { if (isset($activityImageUrls[$activity->getId()])) { //@todo symfonyの形式に変更させる //$activityImageUrl = sf_image_path($activityImageUrls[$activity->getId()], array(), true); $activityImageUrl = $activityImageUrls[$activity->getId()]; } else { $activityImageUrl = null; } $image = $this->getActivityImage($activity->getId()); $responseData['id'] = $activity->getId(); $responseData['member'] = $memberData[$activity->getMemberId()]; $responseData['body'] = preg_replace('/<br\\s\\/>/', '<br />', $activity->getBody()); $responseData['body_html'] = op_activity_linkification(nl2br(op_api_force_escape($responseData['body']))); $responseData['uri'] = $activity->getUri(); $responseData['source'] = $activity->getSource(); $responseData['source_uri'] = $activity->getSourceUri(); $responseData['image_url'] = $image ? sf_image_path($image->getFile()->getName(), array('size' => '120x120')) : null; $responseData['image_large_url'] = $image ? sf_image_path($image->getFile()->getName()) : null; $responseData['created_at'] = date('r', strtotime($activity->getCreatedAt())); $responseDataList[] = $responseData; } return $responseDataList; }
function op_api_activity($activity) { $viewMemberId = sfContext::getInstance()->getUser()->getMemberId(); $member = $activity->getMember(); return array('id' => $activity->getId(), 'member' => op_api_member($member), 'body' => $activity->getBody(), 'body_html' => op_activity_linkification(nl2br(op_api_force_escape($activity->getBody()))), 'uri' => $activity->getUri(), 'source' => $activity->getSource(), 'source_uri' => $activity->getSourceUri(), 'created_at' => date('r', strtotime($activity->getCreatedAt()))); }
public function executePost(sfWebRequest $request) { $errorResponse = $this->getErrorResponseIfBadRequestOfTweetPost($request); if (!is_null($errorResponse)) { return $this->renderJSONDirect($errorResponse); } $validator = new opValidatorImageFile(array('required' => false)); $validator->setOption('max_size', opTimelinePluginUtil::getFileSizeMax()); try { $file = $request->getFiles('timeline-submit-upload'); if (0 !== count($file)) { $validatedFile = $validator->clean($file); } else { $validatedFile = null; } } catch (sfValidatorError $e) { if ('max_size' === $e->getCode()) { $errorResponse = array('status' => 'error', 'message' => 'file size over', 'type' => 'file_size'); } elseif ('mime_types' === $e->getCode()) { $errorResponse = array('status' => 'error', 'message' => 'not image', 'type' => 'not_image'); } else { $errorResponse = array('status' => 'error', 'message' => 'file upload error', 'type' => 'upload'); } return $this->renderJSONDirect($errorResponse); } $this->createActivityDataByRequest($request); if (!is_null($validatedFile)) { $this->timeline->createActivityImageByFileInfoAndActivity($validatedFile, $this->createdActivity); } $responseData = $this->createResponActivityDataOfPost(); $responseData['body'] = htmlspecialchars($responseData['body'], ENT_QUOTES, 'UTF-8'); $responseData['body_html'] = $request->getParameter('in_reply_to_activity_id'); if (is_null($request->getParameter('in_reply_to_activity_id'))) { $responseData['body_html'] = op_activity_linkification(nl2br(op_api_force_escape($responseData['body']))); } else { $responseData['body_html'] = op_activity_linkification(nl2br($responseData['body'])); } if (!is_null($validatedFile)) { return $this->renderJSONDirect(array('status' => 'success', 'message' => 'file up success', 'data' => $responseData)); } return $this->renderJSONDirect(array('status' => 'success', 'message' => 'tweet success', 'data' => $responseData)); }