def get(self, key): user = users.get_current_user() if key == 'meg': bidragsyter = Bidragsyter.all().filter('googleKonto = ', user).get() view = '../../views/bidragsyter_redigerbar.html' self.renderUsingTemplate(view, { 'bidragsyter' : bidragsyter, 'har_twitter_integrasjon' : bidragsyter.har_twitter_godkjenning() }) else: try: bidragsyter = Bidragsyter.all().filter('__key__ =', db.Key(key)).get() if bidragsyter == None: self.not_found() else: view = '../../views/bidragsyter_redigerbar.html' if user == bidragsyter.googleKonto else '../../views/bidragsyter.html' self.renderUsingTemplate(view, { 'bidragsyter' : bidragsyter, 'har_twitter_integrasjon' : bidragsyter.har_twitter_godkjenning() }) except: self.not_found()
def post(self, key): if Authorization.authorize(self): field = cgi.escape(self.request.get('id')) value = cgi.escape(self.request.get('value')) user = users.get_current_user() bidragsyter = Bidragsyter.all().filter('googleKonto =', user).get() if bidragsyter == None: self.error(404) else: field_to_attr = { 'nickname' : 'navn', 'twitter' : 'twitter', 'bekk' : 'bekkAdresse', 'bekk-mailliste' : 'paaBekkMailliste', 'google-mailliste' : 'paaGoogleMailliste' } if field in field_to_attr.keys(): the_value = value if field in ['bekk-mailliste', 'google-mailliste'] : the_value = bool(int(value)) value = { True : 'Ja', False : 'Nei' }[the_value] if the_value == '': the_value = None setattr(bidragsyter, field_to_attr[field], the_value) bidragsyter.put() self.response.out.write(value); else: self.error(500) else: self.error(302)
def post(self): if Authorization.authorize(self): kommentar_uri = cgi.escape(self.request.get('uri')) kommentar_innhold = cgi.escape(self.request.get('kommentar')) bidrager = Bidragsyter.hent(users.get_current_user()) Kommentar(innhold=kommentar_innhold, bidragsyter=bidrager, uri=kommentar_uri).put() taskqueue.add(url='/task/twitter', params={ 'message_key' : 2, 'uri' : kommentar_uri, 'bidragsyter' : bidrager.key() }) self.renderUsingTemplate('../../views/kommentarer.html', KommentarHjelper.hentDataForVisning(kommentar_uri))
def delete(self, uri): if Authorization.authorize(self): liker_uri = urllib.unquote(uri) bidrager = Bidragsyter.hent(users.get_current_user()) eksisterende_liker = Liker.fra_person(liker_uri, bidrager) if eksisterende_liker != None: eksisterende_liker.delete() self.renderAsJson( { 'errorCode': 0, 'numberOfLikes' : Liker.antall_liker(liker_uri), 'likerDuOrdet' : False })
def __har_stemt_paa(ord): logging.info("_har_stempt_paa") bidragsyterId = Bidragsyter.hent(users.get_current_user()).key().id() if bidragsyterId in ord.stemmerFor: return 'Yea' elif bidragsyterId in ord.stemmerMot: return 'Nay' else: return ''
def post(self): if Authorization.authorize(self): liker_uri = cgi.escape(self.request.get('uri')) bidrager = Bidragsyter.hent(users.get_current_user()) if Liker.fra_person(liker_uri, bidrager) != None: self.renderAsJson({ 'errorCode' : 1}) else: Liker(bidragsyter=bidrager, uri=liker_uri).put() taskqueue.add(url='/task/twitter', params={ 'message_key' : 1, 'uri' : liker_uri, 'bidragsyter' : bidrager.key() }) self.renderAsJson({ 'errorCode': 0, 'numberOfLikes' : Liker.antall_liker(liker_uri), 'likerDuOrdet' : True })
def authorize(requestHandler): user = users.get_current_user() if not user: requestHandler.redirect(users.create_login_url(requestHandler.request.uri)) else: bidragsyter = Bidragsyter.all().filter("googleKonto = ", user).get() if not bidragsyter == None: if bidragsyter.svartelistet: requestHandler.error(403) return False return True
def post(self): Authorization.authorize(self) ord = cgi.escape(self.request.get('ord')).lower() besk = cgi.escape(self.request.get('beskrivelse')) exists = db.GqlQuery("SELECT * FROM Ord WHERE navn = :1", ord) errorCode = 0 if exists.count() > 0: errorCode = 1 else: bidrager = Bidragsyter.hent(users.get_current_user()) Ord(navn=ord, beskrivelse=besk, bidragsyter=bidrager.key()).put() self.renderAsJson({ 'errorCode':errorCode })
def post(self): errorCode = 0 antallStemmer = 0 Authorization.authorize(self) ordNokkel = long(cgi.escape(self.request.get('ord-nokkel'))) stemmeFor = (cgi.escape(self.request.get('erStemmeFor')) == 'true') ord = Ord.get_by_id(ordNokkel) bidragsyterId = Bidragsyter.hent(users.get_current_user()).key().id() if ord == None: errorCode = 1 elif bidragsyterId in ord.stemmerFor or bidragsyterId in ord.stemmerMot: errorCode = 2 else: if stemmeFor: ord.stemmerFor.append(bidragsyterId) antallStemmer = len(ord.stemmerFor) else: ord.stemmerMot.append(bidragsyterId) antallStemmer = len(ord.stemmerMot) ord.put() self.renderAsJson({ 'errorCode':errorCode, 'antallStemmer':antallStemmer})
def get(self): bidrager = Bidragsyter.hent(users.get_current_user()) Twitter().lagre_auth_data(self.request, bidrager) self.redirect('/person/meg')
def get(self, uri): liker_uri = urllib.unquote(uri) bidrager = Bidragsyter.hent(users.get_current_user()) liker_ordet = Liker.fra_person(liker_uri, bidrager) != None self.renderAsJson({ 'errorCode': 0, 'numberOfLikes' : Liker.antall_liker(liker_uri), 'likerDuOrdet' : liker_ordet })