67 lines
2.4 KiB
Python
67 lines
2.4 KiB
Python
# CostaPy
|
|
# Copyright (C) 2022 Dita Aji Pratama
|
|
#
|
|
# This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
|
|
# This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
|
|
# You should have received a copy of the GNU General Public License along with this program. If not, see https://www.gnu.org/licenses/.
|
|
|
|
from bottle import Bottle, route, response, request
|
|
from config import directory
|
|
|
|
import json
|
|
|
|
import templates.plain.main as template_public
|
|
import modules.public.home as public_home
|
|
|
|
app = Bottle()
|
|
|
|
@app.route('/')
|
|
def index():
|
|
params = {
|
|
"mako":{
|
|
"website" : template_public.main(directory.page["public"], "home")
|
|
}
|
|
}
|
|
return public_home.main().html(params)
|
|
|
|
@app.route('/api/<crud>', methods=['OPTIONS', 'GET', 'POST', 'PUT', 'DELETE'])
|
|
def list(crud):
|
|
#Menentukan tipe konten untuk response
|
|
response.content_type = 'application/json'
|
|
#Mengambil data dari request body
|
|
params = request.json
|
|
#Keluaran bawaan
|
|
keluaran = {
|
|
"status": "berhasil",
|
|
"message": "Anda Tidak dapat mengakses endpoint ini.",
|
|
"endpoint": f"/api/{crud}",
|
|
}
|
|
|
|
if crud == "create":
|
|
keluaran["status"] = "berhasil"
|
|
keluaran["message"] = "Dummy: selamat data anda telah berhasil disimpan."
|
|
keluaran["data"] = {
|
|
"food":params["food"]
|
|
}
|
|
|
|
elif crud == "read":
|
|
keluaran["status"] = "berhasil"
|
|
keluaran["message"] = "Dummy: data berhasil diambil."
|
|
keluaran["data"] = [
|
|
"banana",
|
|
"apple",
|
|
"marshmallow"
|
|
]
|
|
|
|
elif crud == "update":
|
|
keluaran["status"] = "berhasil"
|
|
keluaran["message"] = "Dummy: belum disediakan, silakan hubungi developer untuk menambahkan fitur ini."
|
|
|
|
elif crud == "delete":
|
|
keluaran["status"] = "berhasil"
|
|
keluaran["message"] = "Dummy: belum disediakan, silakan hubungi developer untuk menambahkan fitur ini."
|
|
|
|
else:
|
|
pass
|
|
|
|
return json.dumps(keluaran, indent=2).encode() |