Example #1
0
def clean_params(*params):
    count = len(params)
    if 2 <= count <= 3:
        (campaign_id, content_id) = (int(part) for part in params[-2:])
        version = make_version(params[0] if count == 3 else API_DEFAULT)
        return (version, campaign_id, content_id)
    raise TypeError("unexpected parameter count")
Example #2
0
from django.shortcuts import redirect, render
from django.views.decorators.csrf import csrf_exempt
from django.views.decorators.http import require_GET, require_http_methods

from core.utils import oauth, signed
from core.utils.version import make_version
from core.utils.http import JsonHttpResponse
from core.utils.sharingurls import fb_oauth_url
from targetshare.models.datastructs import ShortToken
from targetshare.models.relational import FBApp
from targetshare.tasks.integration.facebook import store_oauth_token

from gimmick import tasks


API_VERSION = make_version('2.3')

DEFAULT_APPID = 555738104565910


fb_signed = signed.fb_signed.configured(
    origin='', # Same-Origin check disabled for Firefox
    default_appid=DEFAULT_APPID,
)


@fb_signed
@csrf_exempt
@require_http_methods(['GET', 'POST'])
def intro(request, appid, signed):
    fb_app = FBApp.objects.get(appid=appid)
Example #3
0
from concurrent import futures

import requests
import requests_futures.sessions
from django.conf import settings

from core.utils.version import make_version

from targetshare import classifier
from targetshare.integration.facebook import utils
from targetshare.models import datastructs


LOG = logging.getLogger(__name__)

API_VERSION = make_version("2.3")

GRAPH_ENDPOINT = "https://graph.facebook.com/v{}/".format(API_VERSION)

DAY_CHUNK_SIZE = settings.FACEBOOK.stream.get("day_chunk_size", 30)
DAYS_BACK = settings.FACEBOOK.stream.get("days_back", 180)

PAGE_CHUNK_SIZE = settings.FACEBOOK.stream.get("page_chunk_size", 20)
NUM_PAGES = settings.FACEBOOK.stream.get("num_pages", 100)

MAX_WAIT = settings.FACEBOOK.stream.get("max_wait", 15)
MAX_RETRIES = 3
THREAD_COUNT = 6


@enum.unique
Example #4
0
 def clean_api(self):
     value = self.cleaned_data['api']
     try:
         return version.make_version(value)
     except ArithmeticError:
         raise forms.ValidationError("api version value is out of bounds")