def add_bookmark(request):
    """
    Add bookmark bookmarklet
    """
    if request.user.is_authenticated():
        bag = {}
        if request.method == 'POST':
            form = AddBookmark(request.POST,request=request)
            if form.is_valid():
                bookmark = form.save(commit=False)
                bookmark.user = request.user
                bookmark.slug = slugify(form.cleaned_data['title'])
                bookmark.save()
                messages.info(request, 'Bookmark %s added.' % bookmark)
                return http.HttpResponseRedirect('/close_iframe/')
        else:
            try: title = request.GET['title']
            except: title = ''
            try: url = request.GET['url']
            except: url = ''
            try: 
                licence_url = request.GET['licence']
                
                try: 
                    licence = Licence.objects.get(url = license_url)
                except:
                    #licence_title = request.GET['license_title'] 
                    licence = Licence(url = licence_url, type = licence_url)
                    licence.save()
                
            except: 
                licence = ''
                licence_url = ''
                
            try: description = request.GET['description']
            except: description = ''
            form = AddBookmark(request=request, initial = {'title': title, 'url': url, 'licences': licence, 'description': description})
            bag['licence'] = licence_url
        bag['form'] = form
    
        return shortcuts.render_to_response("bookmark/add_small.html", 
                                            bag, 
                                            context_instance=context.RequestContext(request))


    else:
        return http.HttpResponseRedirect('/auth/login-popup/')
def add(request, username):
    bag = {}
    if request.method == 'POST':
        form = AddBookmark(request.POST,request=request)
        if form.is_valid():
            bookmark = form.save(commit=False)
            bookmark.user = request.user
            bookmark.slug = slugify(form.cleaned_data['title'])
            bookmark.save()
            form.save_m2m()
            messages.info(request, 'Bookmark %s added.' % bookmark)
            return http.HttpResponseRedirect(reverse('bookmarks.bookmark_views.view', args=[bookmark.user.username,bookmark.slug,]))
    else:
        form = AddBookmark(request=request)
            
    bag['form'] = form

    return shortcuts.render_to_response("bookmark/add.html", 
                                        bag, 
                                        context_instance=context.RequestContext(request))