Esempio n. 1
0
 public static function incrementActivity($partner_id, $activity, $sub_activity, $amount = 1, $day = null, $field = null)
 {
     if (!$day) {
         $day = date("Y-m-d");
     }
     $field_name = $field ? PartnerActivityPeer::AMOUNT . $field : PartnerActivityPeer::AMOUNT;
     /*		
     		$query = "INSERT INTO ".PartnerActivityPeer::TABLE_NAME." (".
     			PartnerActivityPeer::PARTNER_ID.",".
     			PartnerActivityPeer::ACTIVITY_DATE.",".
     			PartnerActivityPeer::ACTIVITY.",".
     			PartnerActivityPeer::SUB_ACTIVITY.",".
     			$field_name.") VALUES ".
     			"($partner_id,'$day',$activity,$sub_activity,$amount) ON DUPLICATE KEY UPDATE ".
     			"$field_name=$field_name+$amount";
     
     		$connection = Propel::getConnection();
     
     		$statement = $connection->prepareStatement($query);
     	    $resultset = $statement->executeQuery();
     */
     $connection = Propel::getConnection();
     $crit = new Criteria();
     $crit->addAnd(PartnerActivityPeer::PARTNER_ID, $partner_id);
     $crit->addAnd(PartnerActivityPeer::ACTIVITY_DATE, $day);
     $crit->addAnd(PartnerActivityPeer::ACTIVITY, $activity);
     $crit->addAnd(PartnerActivityPeer::SUB_ACTIVITY, $sub_activity);
     $crit->addSelectColumn(PartnerActivityPeer::ID);
     $resultset = PartnerActivityPeer::doSelectOne($crit, $connection);
     /*
     		$query = "SELECT ID FROM ".PartnerActivityPeer::TABLE_NAME." WHERE ".
     			PartnerActivityPeer::PARTNER_ID."=$partner_id AND ".
     			PartnerActivityPeer::ACTIVITY_DATE."='$day' AND ".
     			PartnerActivityPeer::ACTIVITY."=$activity AND ".
     			PartnerActivityPeer::SUB_ACTIVITY."=$sub_activity";
     		
     		$statement = $connection->prepare($query);
     	    $resultset = $statement->execute();
     */
     // if the key exists do an update command
     if ($resultset) {
         $id = $resultset->getInt('ID');
         $updateCommand = "UPDATE " . PartnerActivityPeer::TABLE_NAME . " SET {$field_name}={$field_name}+{$amount} WHERE " . PartnerActivityPeer::ID . "={$id}";
     } else {
         $updateCommand = "INSERT INTO " . PartnerActivityPeer::TABLE_NAME . " (" . PartnerActivityPeer::PARTNER_ID . "," . PartnerActivityPeer::ACTIVITY_DATE . "," . PartnerActivityPeer::ACTIVITY . "," . PartnerActivityPeer::SUB_ACTIVITY . "," . $field_name . ") VALUES " . "({$partner_id},'{$day}',{$activity},{$sub_activity},{$amount})";
     }
     $statement = $connection->prepare($updateCommand);
     $resultset = $statement->execute();
 }