/** * generate Wildcard.. truncate if necessary, $pUrl is optional * * @param YiidActivity $pActivity * @return string */ public function generateMessage($pActivity) { if ($pActivity->getDomainProfile() && $pActivity->getDomainProfile()->getFlattrAccount()) { $auto_submit = "http://flattr.com/submit/auto?url=" . urlencode($pActivity->getUrl()) . "&user_id=" . $pActivity->getDomainProfile()->getFlattrAccount(); $json = json_encode(array("url" => $auto_submit)); return $json; } return; }
/** * generate Wildcard.. truncate if necessary, $pUrl is optional * * @param YiidActivity $pActivity * @return string */ protected function generateMessage($pActivity) { // load activity or deal to fill the dummy object if ($pActivity->isDeal()) { $i18n = sfContext::getInstance()->getI18N(); $lActionText = $i18n->__("Get the Deal"); $lObject = $pActivity->getDeal(); } else { $lActionText = "Teilen"; $lObject = $pActivity; } $lPostBody = "message=" . urlencode($pActivity->getComment()); if ($lObject->getDescr() && $lObject->getDescr() != '') { $lPostBody .= "&description=" . urlencode($lObject->getDescr()); } if ($lObject->getTitle() && $lObject->getTitle() != '') { $lPostBody .= "&name=" . urlencode($lObject->getTitle()); } if ($lObject->getThumb() && $lObject->getThumb() != '') { $lPostBody .= "&picture=" . urlencode($lObject->getThumb()); } $lPostBody .= "&link=" . urlencode($pActivity->generateUrlWithClickbackParam($this->onlineIdentity)); $lPostBody .= '&privacy={"value": "EVERYONE"}'; $lLink = sfConfig::get("app_settings_widgets_url") . '/?url=' . urlencode($pActivity->getUrl()); if ($pActivity->getTags()) { $lLink .= '&tags=' . implode(",", $pActivity->getTags()); } // add clickback param $lLink .= '&clickback=facebook.' . $pActivity->getId(); $lActions = array("name" => $lActionText, "link" => urlencode($lLink)); $lPostBody .= '&actions=' . json_encode($lActions); return $lPostBody; }
/** * generate Wildcard.. truncate if necessary, $pUrl is optional * * @param YiidActivity $pActivity * @return string */ protected function generateMessage($pActivity) { $lPostBody = "message=" . urlencode($pActivity->getDescr()); $lPostBody .= "&name=" . urlencode($lObject->getTitle()); if ($lObject->getThumb() && $lObject->getThumb() != '') { $lPostBody .= "&photo=" . urlencode($lObject->getThumb()); } $lPostBody .= "&url=" . urlencode($pActivity->getUrl()); if ($pActivity->getTags()) { $lPostBody .= '&tags=' . implode(",", $pActivity->getTags()); } return $lPostBody; }
/** * generate Wildcard.. truncate if necessary, $pUrl is optional * * @param YiidActivity $pActivity * @return string */ public function generateMessage($pActivity) { $lUrl = $pActivity->generateUrlWithClickbackParam($this->onlineIdentity); $lComment = $pActivity->getComment(); $lStatusMessage = '<?xml version="1.0" encoding="UTF-8"?><share>'; $lStatusMessage .= "<comment><![CDATA[" . substr($lComment, 0, 700) . "]]></comment>"; $lStatusMessage .= '<content>'; $lStatusMessage .= "<submitted-url><![CDATA[{$lUrl}]]></submitted-url>"; if ($pActivity->getTitle()) { $lStatusMessage .= "<title><![CDATA[" . substr($pActivity->getTitle(), 0, 200) . "]]></title>"; } if ($pActivity->getDescr()) { $lStatusMessage .= "<description><![CDATA[" . substr($pActivity->getDescr(), 0, 256) . "]]></description>"; } if ($pActivity->getThumb()) { $lStatusMessage .= "<submitted-image-url><![CDATA[" . $pActivity->getThumb() . "]]></submitted-image-url>"; } $lStatusMessage .= '</content>'; $lStatusMessage .= '<visibility><code>anyone</code></visibility></share>'; return $lStatusMessage; }
/** * generate Wildcard.. truncate if necessary, $pUrl is optional * * @param YiidActivity $pActivity * @return string */ public function generateMessage($pActivity) { sfProjectConfiguration::getActive()->loadHelpers('Text'); $lUrl = ShortUrlTable::shortenUrl($pActivity->generateUrlWithClickbackParam($this->onlineIdentity)); $lMaxChars = 135; $lText = $lUrl; $lLengthOfText = strlen($lText); if ($pActivity->getComment()) { $lChars = $lMaxChars - $lLengthOfText; $lText = truncate_text($pActivity->getComment(), $lChars, '...') . " " . $lText; } elseif ($pActivity->getTitle()) { $lChars = $lMaxChars - $lLengthOfText; $lText = truncate_text($pActivity->getTitle(), $lChars, '...') . " " . $lText; } return array("status" => $lText); }
/** * save aggregated stat-informations * * @param YiidActivity $pYiidActivity * @param User $pUser * @author Matthias Pfefferle */ public static function createChartData($pYiidActivity) { $lHost = parse_url($pYiidActivity->getUrl(), PHP_URL_HOST); $lDoc = array('url' => $pYiidActivity->getUrl(), 'date' => new MongoDate(strtotime(date("Y-m-d", $pYiidActivity->getC())))); $pUser = $pYiidActivity->getUser(); $lOptions = array(); // set gender switch ($pUser->getGender()) { case "m": $lOptions["d.sex.m"] = 1; break; case "f": $lOptions["d.sex.f"] = 1; break; default: $lOptions["d.sex.u"] = 1; break; } // set relationship switch ($pUser->getRelationshipState()) { case IdentityHelper::USER_RELATIONSHIP_STATUS_COMPLICATED: $lOptions["d.rel.compl"] = 1; break; case IdentityHelper::USER_RELATIONSHIP_STATUS_ENGAGED: $lOptions["d.rel.eng"] = 1; break; case IdentityHelper::USER_RELATIONSHIP_STATUS_IN_OPEN_RELATIONSHIP: $lOptions["d.rel.ior"] = 1; break; case IdentityHelper::USER_RELATIONSHIP_STATUS_IN_RELATIONSHIP: $lOptions["d.rel.rel"] = 1; break; case IdentityHelper::USER_RELATIONSHIP_STATUS_MARRIED: $lOptions["d.rel.mar"] = 1; break; case IdentityHelper::USER_RELATIONSHIP_STATUS_SINGLE: $lOptions["d.rel.singl"] = 1; break; case IdentityHelper::USER_RELATIONSHIP_STATUS_WIDOWED: $lOptions["d.rel.wid"] = 1; break; default: $lOptions["d.rel.u"] = 1; break; } // set age $a = $pUser->getAge(); if ($a < 18) { $lOptions["d.age.u_18"] = 1; } elseif ($a >= 18 && $a <= 24) { $lOptions["d.age.b_18_24"] = 1; } elseif ($a >= 25 && $a <= 34) { $lOptions["d.age.b_25_34"] = 1; } elseif ($a >= 35 && $a <= 54) { $lOptions["d.age.b_35_54"] = 1; } elseif ($a >= 55) { $lOptions["d.age.o_55"] = 1; } else { $lOptions["d.age.u"] = 1; } // set tags if ($lTags = $pYiidActivity->getTags()) { // add each tag with counts foreach ($lTags as $lTag) { $lOptions["t." . $lTag . ".cnt"] = 1; // set score if ($pYiidActivity->getScore() > 0) { $lOptions["t." . $lTag . ".pos"] = 1; } else { $lOptions["t." . $lTag . ".neg"] = 1; } // clickbacks if ($pYiidActivity->isClickback()) { $lOptions["s." . $lTag . ".cb"] = 1; } } } $lUpdate = false; // add online identities foreach ($pYiidActivity->getOiids() as $lId) { $lOi = OnlineIdentityTable::getInstance()->retrieveByPk($lId); if ($lOi) { $lUpdate = true; if ($pYiidActivity->getScore() > 0) { $lOptions["s." . $lOi->getCommunity()->getCommunity() . ".pos"] = 1; } else { $lOptions["s." . $lOi->getCommunity()->getCommunity() . ".neg"] = 1; } $lOptions["s." . $lOi->getCommunity()->getCommunity() . ".cnt"] = intval($lOi->getFriendCount()); // clickbacks if ($pYiidActivity->isClickback()) { $lOptions["s." . $pYiidActivity->getCbService() . ".cb"] = 1; } } } if ($lUpdate) { // check if activity is a deal if ($lDealId = $pYiidActivity->getDId()) { // add deal id $lChart = 'deals'; $lDoc['d_id'] = intval($lDealId); } else { $lChart = 'charts'; } // mongo collection $lCollection = self::getMongoCollection(str_replace('.', '_', $lHost) . ".analytics." . $lChart); // update analytics $lCollection->update($lDoc, array('$inc' => $lOptions), array("upsert" => true)); } }