Esempio n. 1
0
 public static function fromOnlineIdentityId($id)
 {
     $lOnlineIdentity = OnlineIdentityTable::getInstance()->find($id);
     $client = self::getClientByCommunityName($lOnlineIdentity->getCommunity()->getCommunity());
     $client->setOnlineIdentity($lOnlineIdentity);
     return $client;
 }
Esempio n. 2
0
 /**
  * updates an auth-token
  *
  * @author Matthias Pfefferle
  * @param int $pUserId
  * @param int $pOnlineIdentityId
  * @param string $pToken
  * @param string $pTokenSecret
  * @param boolean $pActive
  * @return AuthToken
  */
 public static function saveToken($pUserId, $pOnlineIdentityId, $pToken, $pTokenSecret, $pActive = false)
 {
     if ($lCheck = self::getByUserAndOnlineIdentity($pUserId, $pOnlineIdentityId)) {
         $lToken = $lCheck;
     } else {
         $lToken = new AuthToken();
     }
     if ($pActive && $pOnlineIdentityId) {
         $lIdentity = OnlineIdentityTable::getInstance()->retrieveByPK($pOnlineIdentityId);
         $lIdentity->save();
     }
     $lToken->setTokenKey($pToken);
     $lToken->setOnlineIdentityId($pOnlineIdentityId);
     // get online-identity
     $lOnlineIdentity = OnlineIdentityTable::getInstance()->find($pOnlineIdentityId);
     $lToken->setCommunityId($lOnlineIdentity->getCommunityId());
     $lToken->setTokenType(self::TOKEN_TYPE_OAUTH);
     $lToken->setTokenSecret($pTokenSecret);
     $lToken->setUserId($pUserId);
     $lToken->save();
     return $lToken;
 }
Esempio n. 3
0
 public function getOnlineIdentityProfileUri($community)
 {
     if ($OnlineIdentity = OnlineIdentityTable::getInstance()->retrieveByUserIdAndCommunity($this->getId(), $community)) {
         if ($pu = $OnlineIdentity->getProfileUri()) {
             return $pu;
         } else {
             return $OnlineIdentity->getName();
         }
     } else {
         return "none";
     }
 }
Esempio n. 4
0
    <?php 
    echo OnlineIdentityTable::getInstance()->find($e->getOiId())->getProfileUri();
    ?>
    <?php 
    if ($user && $user->getEmail()) {
        echo "<br />" . $user->getEmail();
    }
    ?>
    </small>
    <h3>
      <strong><em><?php 
    echo $user ? $user->getFullname() : 'n/a';
    ?>
</em></strong>s
      <strong><em><?php 
    echo OnlineIdentityTable::getInstance()->find($e->getOiId())->getCommunity()->getName();
    ?>
</em></strong>-account has hiccups
    </h3>
    <p>Error: {<?php 
    echo $e->getCode();
    ?>
} <?php 
    echo $e->getMessage();
    ?>
</p>
  </li>
<?php 
}
?>
</ul>
 public function testGetIdentitysConnectedToOi()
 {
     $lCommunity = CommunityTable::getInstance()->findBy("community", "google");
     $lCommunity = $lCommunity[0];
     $result = OnlineIdentityTable::retrieveByIdentifier("hugo", $lCommunity->getId(), OnlineIdentityTable::TYPE_IDENTITY);
     $this->assertEquals("hugo", $result->getIdentifier());
     $lConnectedIds = OnlineIdentityConTable::getIdentitysConnectedToOi($result->getId());
     $this->assertTrue(is_array($lConnectedIds));
     $this->assertEquals('OnlineIdentity', get_class(OnlineIdentityTable::getInstance()->find($lConnectedIds[0])));
 }
Esempio n. 6
0
 private static function fillServices($pYiidActivity)
 {
     $services = array();
     foreach ($pYiidActivity->getOiids() as $lId) {
         $lOi = OnlineIdentityTable::getInstance()->retrieveByPk($lId);
         if ($lOi) {
             $service = self::fillService($pYiidActivity, $lOi);
             $services[strtolower($lOi->getCommunity()->getCommunity())] = $service;
         }
     }
     return $services;
 }
Esempio n. 7
0
 /**
  * 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));
     }
 }