Mercurial > kraina_muminkow
diff frontend/mfrontend/views/api.py @ 14:df32c1d01b8d
Dodałem edycję zadań przez POST, napisałem coś w rodzaju dokumentacji z nudów
author | Michał Rudowicz <michal.rudowicz@fl9.eu> |
---|---|
date | Fri, 01 Apr 2011 22:58:29 +0200 |
parents | 79cf8ca2a0e5 |
children | 8dabb7e7f039 |
line wrap: on
line diff
--- a/frontend/mfrontend/views/api.py Fri Apr 01 19:02:08 2011 +0200 +++ b/frontend/mfrontend/views/api.py Fri Apr 01 22:58:29 2011 +0200 @@ -1,12 +1,15 @@ #!/usr/bin/python # -*- coding: utf-8 -*- -from flask import jsonify, Module, abort +from flask import jsonify, Module, abort, request from mfrontend import db, utils, exceptions, decorators api = Module(__name__) @api.route('/getjob/<apikey>/') def get_jobs(): + """ Funkcja pobiera informacje o wszystkich zadaniach + i zwraca je w formacie JSON. + """ if apikey != db.config.get('Basic', 'ApiKey'): abort(403) return jsonify(jobs = db.get_jobs(None, None, None)) @@ -15,8 +18,9 @@ def get_first_waiting_job(apikey): """ Zwraca w formacie JSON informacje o pierwszym czekającym zadaniu. - @param apikey Klucz API. - @return Dane o zadaniu w formacie JSON. + + :param apikey: Klucz API. + :returns: Dane o zadaniu w formacie JSON. """ if apikey != db.config.get('Basic', 'ApiKey'): abort(403) @@ -25,10 +29,9 @@ @api.route('/getjob/<apikey>/<int:jobid>/') def get_job(apikey, jobid): """ Zwraca w formacie JSON informacje o podanym zadaniu. - Uwaga: użytkownik musi być zalogowany, aby móc pobrać - informację o zadaniu. - @param jobid Identyfikator żądanego zadania. - @return Informacje o zadaniu w formacie JSON. + + :param jobid: Identyfikator żądanego zadania. + :param apikey: Klucz API """ # jeśli klucz API jest niepoprawny, przerywamy if apikey != db.config.get('Basic','ApiKey'): @@ -36,3 +39,15 @@ # w innym przypadku zwracamy informacje o zadaniu return jsonify(job = db.get_job_by_id(jobid)) +@api.route('/modify/<apikey>/<int:jobid>/', methods=['POST']) +def modify_job(apikey, jobid): + """ Funkcja pozwalająca na modyfikację wybranego + zadania. + + :param apikey: Klucz API + :param jobid: Identyfikator zadania do zmodyfikowania + """ + if apikey != db.config.get('Basic','ApiKey'): + abort(403) + db.edit_job(jobid, request.form) + return "OK"