Exemplo n.º 1
0
def get_doc_content(request, resource_id):
    if request.session.get(GOOGLE_OAUTH_TOKEN, False):
        client = get_client(
            request.session[GOOGLE_OAUTH_TOKEN].token,
            request.session[GOOGLE_OAUTH_TOKEN].token_secret,
        )
        doc = client.GetDoc(resource_id)
        content = client.GetFileContent(uri=doc.content.src +
                                        "&exportFormat=html")
        css_begin_index = content.find('<style type="text/css">')
        css_end_index = content.find('</head>', css_begin_index)
        css_style = content[css_begin_index:css_end_index]
        body_begin = content.find('<body')
        body_end = content.find('</html>')
        body = content[body_begin:body_end]

        c = {
            'parent_link': request.META.get('HTTP_REFERER', None),
            'doc': doc,
            'style': css_style,
            'body': body
        }
        return render_to_response("google_reftagger_doc.html",
                                  c,
                                  context_instance=RequestContext(request))

    elif request.session.get(GOOGLE_OAUTH_REQ_TOKEN, False):
        oauth_get_access_token(request)
        return HttpResponseRedirect("http://" + request.get_host() +
                                    request.path)

    else:
        return oauth_start(request)
Exemplo n.º 2
0
def isOwnerOfFolder(folderAsLink, login, stdToken, spreadsheetToken):
	folderId = folderAsLink.href.split('/')[-1]
	if args.verbose:
		LOG.debug ("Trying to access to folder '"+folderAsLink.title+"' ("+folderId+") as user :  "******"owner" and acl.scope.value== login:
				return True
		return False
	except gdata.client.Unauthorized  as error:
		LOG.error ("No access to folder "+folderAsLink.title.text.encode(sys.getfilesystemencoding())+" : it seems that "+login+" is  not the owner of that folder")
		LOG.error ("Error: {0}".format(error))
		return False	
Exemplo n.º 3
0
def google_upload(token, path, content, entryid=None):
	docs_service = gdata.docs.service.DocsService()
	docs_service.SetAuthSubToken(token, GOOGLE_DATA_SCOPES)

	file_dir, file_name = path.rsplit('/', 1)
	f = StringIO.StringIO(content)
	ms = gdata.data.MediaSource(file_handle=f, content_type='text/html', content_length=len(content), file_name=file_name)

	if not entryid:
		j_folder = google_folder(docs_service, 'journalr')
		dest_folder = google_folder(docs_service, file_dir, j_folder)

		entry = docs_service.Upload(ms, file_name, folder_or_uri=dest_folder)
		return entry.resourceId.text
	else:
		client = gdata.docs.client.DocsClient()
		authsub = gdata.gauth.AuthSubToken(token)
		client.auth_token = authsub
		entry = client.GetDoc(entryid)
		entry = client.Update(entry, media_source=ms)
Exemplo n.º 4
0
def get_folder_contents(request, resource_id):
    if request.session.get(GOOGLE_OAUTH_TOKEN, False):
        client = get_client(
            request.session[GOOGLE_OAUTH_TOKEN].token,
            request.session[GOOGLE_OAUTH_TOKEN].token_secret,
        )
        folder = client.GetDoc(resource_id)
        feed = client.GetDocList(uri=folder.content.src + "/-/document")

        c = {
            'folder': folder,
            'feed': feed,
        }
        return render_to_response("google_reftagger_folder.html",
                                  c,
                                  context_instance=RequestContext(request))

    elif request.session.get(GOOGLE_OAUTH_REQ_TOKEN, False):
        oauth_get_access_token(request)
        return HttpResponseRedirect("http://" + request.get_host() +
                                    request.path)

    else:
        return oauth_start(request)