Beispiel #1
0
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())));
}
Beispiel #2
0
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\\/>/', '&lt;br&nbsp;/&gt;', $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())));
}
Beispiel #5
0
 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));
 }