Example #1
0
def api(request):
    if request.REQUEST.has_key('key') and request.REQUEST.has_key('url') :
        url=UrlForm(request.REQUEST)
        success=201
    elif request.REQUEST.has_key('url'):
        url=UrlForm(MergeDict(request.REQUEST,{'key':safeNewKey()}))
        success=201
    elif request.REQUEST.has_key('key'): # pure lookup, no new redirection
        urlinst=get_object_or_404(URL,key=request.REQUEST['key'])
        url=UrlForm({'key':urlinst.key,'url':urlinst.url},instance=urlinst)
        success=200
    else: url=UrlForm()

    if url.is_valid():
        #url.save()
        retdict=getRetDict(url.instance.key,url.instance.url)
        
        response = HttpResponse(mimetype="application/json",status=success)
        json(retdict,response)

    else:
        response = HttpResponse(mimetype="application/json",status=409)
        json({'error':'Something went wrong, most probably, the short key you wanted was already taken or invalid.'},response)

    return response
Example #2
0
def post(request, username, year, month, slug,
         template_name="features/post.html"):
    
    ''' The main Project and Feature view'''
    post = Feature.objects.filter(
        slug = slug,
        publish__year = int(year),
        publish__month = int(month),
        author__username = username,
        #feature_of__isnull=True,
    )
    
    if not post:
        raise Http404
    
    if post[0].status == 1 and post[0].author != request.user:
        raise Http404
    
    features = post[0].feature_set.all()
    features = post | features 
        
    featureList=[f.json for f in features]
        
    for i,f in enumerate(features):
        html = render_to_response("features/infowindow.html",{"feature":f}).content
        featureList[i]["html"]=html
    
        
    return render_to_response(template_name, {
        "post": post[0],
        "features":json(featureList),
        "free_threaded_comments": FreeThreadedComment.objects.filter(name='Android',object_id=post[0].id)
    }, context_instance=RequestContext(request))
Example #3
0
def list(request):
    
    features = Feature.objects.filter(feature_of__isnull=True)
    out = [{'title':f.title, 'fid':f.id} for f in features]
    if 'apk' in request.GET:
	out = ['title: %s fid: %s'%(f.title, f.id) for f in features]
        
    if 'callback' in request.GET:
        out = request.GET['callback']+"("+json+")"        
    else: 
        out=json(out)
    return HttpResponse(out)
Example #4
0
def edit(request, id, form_class=FeatureForm, template_name="features/edit.html"):
    post = get_object_or_404(Feature, id=id)
    
    if request.method == "POST":
        if post.author != request.user:
            messages.add_message(request, messages.ERROR,
                ugettext("You can't edit posts that aren't yours")
            )
            return HttpResponseRedirect(reverse("feature_list_yours"))
        if request.POST["action"] == "update":
            blog_form = form_class(request.user, request.POST, instance=post)
            if blog_form.is_valid():
                blog = blog_form.save(commit=False)
                blog.save()
                messages.add_message(request, messages.SUCCESS,
                    ugettext("Successfully updated project '%s'") % blog.title
                )
                if notification:
                    if blog.status == 2: # published
                        if friends: # @@@ might be worth having a shortcut for sending to all friends
                            notification.send((x['friend'] for x in Friendship.objects.friends_for_user(blog.author)), "blog_friend_post", {"post": blog})
                
                return HttpResponseRedirect(reverse("feature_list_yours"))
        else:
            blog_form = form_class(instance=post)
    else:
        blog_form = form_class(instance=post)
    
    
    features = Feature.objects.get(pk=id)
    #features = post | features 
    featureList=[features.json]
    
    return render_to_response(template_name, {
        "blog_form": blog_form,
        "post": post,
        "features":json(featureList),
        'featureType':FeatureType.objects.all(),
    }, context_instance=RequestContext(request))
Example #5
0
import os, sys, re
try:
    from simplejson import load as json
    from simplejson import dumps as dump
except:
    from json import load as json
    from json import dumps as dump
from glob import glob

VERSION = 0.1

all = []

for p in glob("../plugins/*.json"):
    fp = open(p, "r")
    x = json(fp, "utf-8")
    x['date'] = int(os.path.getmtime(p) * 1000)
    fp.close()
    all += x,

fp = open("../modules/plugins.json", "w")
fp.write(dump(all))
Example #6
0
import os, sys, re
try:
    from simplejson import load as json
    from simplejson import dumps as dump
except:
    from json import load as json
    from json import dumps as dump
from glob import glob

VERSION = 0.1

all = []
    
for p in glob("../plugins/*.json"):
    fp = open(p, "r")
    x = json(fp, "utf-8")
    x['date'] = int(os.path.getmtime(p) * 1000)
    fp.close()
    all += x,
    
fp = open("../modules/plugins.json", "w")
fp.write(dump(all))