2011-01-21 22:00:36 -05:00
|
|
|
import os
|
|
|
|
import base64
|
|
|
|
from django.conf import settings
|
2011-01-22 11:22:14 -05:00
|
|
|
from django.http import HttpResponse
|
2011-01-21 20:29:19 -05:00
|
|
|
from django.shortcuts import render_to_response
|
|
|
|
from django.template import RequestContext
|
|
|
|
from apps.profile.models import Profile
|
|
|
|
from apps.reader.models import UserSubscription, UserSubscriptionFolders
|
2011-01-20 19:14:54 -05:00
|
|
|
from utils import json_functions as json
|
|
|
|
|
2011-01-21 20:29:19 -05:00
|
|
|
def add_site_load_script(request, token):
|
|
|
|
code = 0
|
2011-01-21 22:00:36 -05:00
|
|
|
folder_image_path = os.path.join(settings.MEDIA_ROOT, 'img/icons/silk/folder.png')
|
|
|
|
folder_image = open(folder_image_path)
|
|
|
|
folder_image = base64.b64encode(folder_image.read())
|
2011-01-21 20:29:19 -05:00
|
|
|
try:
|
|
|
|
profile = Profile.objects.get(secret_token=token)
|
|
|
|
usf = UserSubscriptionFolders.objects.get(
|
|
|
|
user=profile.user
|
|
|
|
)
|
|
|
|
except Profile.DoesNotExist:
|
|
|
|
code = -1
|
|
|
|
except UserSubscriptionFolders.DoesNotExist:
|
|
|
|
code = -1
|
|
|
|
|
2011-01-22 11:22:14 -05:00
|
|
|
return render_to_response('api/bookmarklet_subscribe.js',
|
|
|
|
{
|
|
|
|
'code': code,
|
|
|
|
'token': token,
|
|
|
|
'folders': usf.folders,
|
|
|
|
'folder_image': folder_image,
|
|
|
|
},
|
|
|
|
context_instance=RequestContext(request),
|
|
|
|
mimetype='application/javascript')
|
2011-01-21 20:29:19 -05:00
|
|
|
|
2011-01-20 19:14:54 -05:00
|
|
|
def add_site(request, token):
|
2011-01-21 20:29:19 -05:00
|
|
|
code = 0
|
2011-01-22 11:22:14 -05:00
|
|
|
url = request.GET['url']
|
|
|
|
folder = request.GET['folder']
|
|
|
|
callback = request.GET['callback']
|
2011-01-21 20:29:19 -05:00
|
|
|
|
2011-01-22 11:22:14 -05:00
|
|
|
if not url:
|
2011-01-21 20:29:19 -05:00
|
|
|
code = -1
|
2011-01-22 11:22:14 -05:00
|
|
|
else:
|
|
|
|
try:
|
|
|
|
profile = Profile.objects.get(secret_token=token)
|
|
|
|
code, message, us = UserSubscription.add_subscription(
|
|
|
|
user=profile.user,
|
|
|
|
feed_address=url,
|
|
|
|
folder=folder
|
|
|
|
)
|
|
|
|
except Profile.DoesNotExist:
|
|
|
|
code = -1
|
2011-01-21 20:29:19 -05:00
|
|
|
|
2011-01-22 18:25:16 -05:00
|
|
|
if code > 0:
|
|
|
|
folder_image_path = os.path.join(settings.MEDIA_ROOT, 'img/icons/silk/accept.png')
|
|
|
|
folder_image = open(folder_image_path)
|
|
|
|
folder_image = base64.b64encode(folder_image.read())
|
|
|
|
message = folder_image
|
|
|
|
|
2011-01-22 11:22:14 -05:00
|
|
|
return HttpResponse(callback + '(' + json.encode({
|
2011-01-21 20:29:19 -05:00
|
|
|
'code': code,
|
|
|
|
'message': message,
|
2011-01-22 11:22:14 -05:00
|
|
|
'usersub': us and us.feed.pk,
|
|
|
|
}) + ')', mimetype='text/plain')
|