ApiServer.views module

Gère toutes les vues correspondantes à l’api utilisée par les écrans pour rafraichir les informations à afficher

ApiServer.views.getArticles(request: django.core.handlers.wsgi.WSGIRequest) django.http.response.JsonResponse[source]

Récupère les articles visibles et retourne la requête en JSONResponse

Paramètres

request (WSGIRequest) – Requête Django

Renvoie

Requête Django correspondante au renvoie d’un fichier JSON

Type renvoyé

JSONResponse

Exemple

[
    {
    "title": "Mon bel article",
    "article": "Lorem ipsum blabla il est joli l'article pas vrai",
    "image": "Articles/IMG_5532_rTKf30T.png",
    "date_creation": "2022-01-17",
    "author": {
        "first_name": "Elo",
        "last_name": "Rap"
    },
    "date_last_modif": "2022-01-07"
    }
]
ApiServer.views.getDisplays(request: django.core.handlers.wsgi.WSGIRequest) django.http.response.JsonResponse[source]

Récupère l’écran et la page associée au paramètre code_name dans l’url de la requêtes et retourne les infos sous format JSON.

Paramètres
  • request (WSGIRequest) – Requête Django

  • code_name (str) – Paramètre passé à la requête, codename de l’écran que l’user veut obtenir les infos

Renvoie

Requête Django correspondante au renvoie d’un fichier JSON

Type renvoyé

JSONResponse

Exemple

[
    {
    "code_name": "viescolaire",
    "name": "Vie scolaire Bat C",
    "page": "Article + Profs abs + Agenda + Twitter"
    }
]
ApiServer.views.getInfos(request: django.core.handlers.wsgi.WSGIRequest) django.http.response.JsonResponse[source]

Récupère les informations visibles et les retourne sous format JSON.

Paramètres

request (WSGIRequest) – Requête Django

Renvoie

Requête Django correspondante au renvoie d’un fichier JSON

Type renvoyé

JSONResponse

Exemple

[
    {
    "message": "Internat fermé jusque nouvel ordre !",
    "type": {
        "id": 1,
        "name": "Important"
    },
    "date_creation": "2022-01-22",
    "author": {
        "first_name": "Elo",
        "last_name": "Rap"
    }
    }
]
ApiServer.views.getMeals(request: django.core.handlers.wsgi.WSGIRequest) django.http.response.JsonResponse[source]

Récupère le menu correpondant au paramètre date et retourne ses infos sous format JSON

Paramètres
  • request (WSGIRequest) – Requête Django

  • date (str) – Paramètre passé à la requête, il faut qu’elle est la forme 2022-01-19

Renvoie

Requête Django correspondante au renvoie d’un fichier JSON

Type renvoyé

JSONResponse

Exemple

[
    {
    "date": "2022-01-19",
    "is_midday": true,
    "meal": {
        "1": [
        "Pâté en croûte ",
        "Salade verte oignons frits"
        ],
        "2": [
        "Poisson pané ",
        "Côte d'agneau"
        ],
        "3": [
        "Légumes grillés ",
        "Gratin dauphinois"
        ],
        "4": [
        "eau"
        ],
        "5": [
        "Fromage",
        "Yaourt"
        ],
        "6": [
        "Fruit de saison",
        "Mousse chocolat ",
        "Ananas chantilly"
        ]
    }
    },
]
ApiServer.views.getMeteo(request: django.core.handlers.wsgi.WSGIRequest) django.http.response.JsonResponse[source]

Renvoie la météo du jour avec les prévisions sur 2 jours sour format JSON

Voir l’api de OpenWeatherMap pour plus d’infos sur la data renvoyée

Paramètres

request (WSGIRequest) – Requête Django

Renvoie

Requête Django correspondante au renvoie d’un fichier JSON

Type renvoyé

JSONResponse

Example

Une partie des informations sont omises, seules les informations les plus importantes sont dans cet exemple.

{
    "hourly": [
    {
        "dt": 1642878000,
        "temp": 3.47,
        "feels_like": 3.47,
        "weather": [
        {
            "id": 800,
            "main": "Clear",
            "description": "clear sky",
            "icon": "01n"
        }
        ],
    },
    ],
    "today": {
    "dt": 1642852800,
    "temp": {
        "day": 5.78,
        "min": -0.33,
        "max": 6.83,
        "night": 2.47,
        "eve": 3.33,
        "morn": -0.33
    },
    "feels_like": {
        "day": 4.4,
        "night": 2.47,
        "eve": 3.33,
        "morn": -0.33
    },
    "weather": [
        {
        "id": 800,
        "main": "Clear",
        "description": "clear sky",
        "icon": "01d"
        }
    ],
    }
}
ApiServer.views.getProfsAbs(request: django.core.handlers.wsgi.WSGIRequest) django.http.response.JsonResponse[source]

Récupère les profs absent correpondant à la date d’aujourd’hui et retourne les infos sous format JSON

Paramètres

request (WSGIRequest) – Requête Django

Renvoie

Requête Django correspondante au renvoie d’un fichier JSON

Type renvoyé

JSONResponse

Exemple

[
    {
    "prof": "JESUS R.",
    "debut": "2022-01-19T21:15:25Z",
    "fin": "2022-01-19T23:15:35Z"
    }
]
ApiServer.views.getSurveys(request: django.core.handlers.wsgi.WSGIRequest) django.http.response.JsonResponse[source]

Récupère les sondages visibles, avec les réponses associées et les retourne sous format JSON.

Paramètres

request (WSGIRequest) – Requête Django

Renvoie

Requête Django correspondante au renvoie d’un fichier JSON

Type renvoyé

JSONResponse

Exemple

[
    {
    "id": 1,
    "author": 1,
    "subject": "Combat de MMA entre le proviseur et les AED",
    "date_creation": "2022-01-22",
    "date_end": "2022-02-06",
    "answers": [
    {
        "id": 1,
        "text": "Pour"
    },
    {
        "id": 2,
        "text": "Contre"
    }
    ]
    }
]
ApiServer.views.getTweets(request: django.core.handlers.wsgi.WSGIRequest) django.http.response.JsonResponse[source]

Renvoie les 5 derniers tweets postés du compte LycéeBourdelle

Paramètres

request (WSGIRequest) – Requête Django

Renvoie

Requête Django correspondante au renvoie d’un fichier JSON

Type renvoyé

JSONResponse

Exemple

{
    "data": [
    {
        "text": "ERASMUS avec les collèges @Col_Despeyrous ...",
        "created_at": "2022-01-21T09:47:27Z"
    },
    {
        "text": "ERASMUS+ LP BOURDELLE: signatures des con ...",
        "created_at": "2022-01-13T10:26:51Z"
    },
    {
        "text": "09/11/21 Les Term STL @LyceeBourdelle au m...",
        "created_at": "2022-01-11T08:13:50Z"
    },
    {
        "text": "ORIENTATION AMBITIEUSE @LyceeBourdelle : p...",
        "created_at": "2021-12-17T16:36:49Z"
    },
    {
        "text": "ERASMUS +@LyceeBourdelle : voyage préparat...",
        "created_at": "2021-12-17T16:11:51Z"
    }
    ],
    "meta": {
    "oldest_id": "1471875800865689601",
    "newest_id": "1484462637899526147",
    "result_count": 5
    }
}
ApiServer.views.hideExpiredObjects(query: django.db.models.query.QuerySet)[source]

Depuis une liste d’objets Django quelconque venant de la DB avec les colonnes date_end et shown, la fonction cache tous les objets ayant un date_end plus petite que la date d’aujourd’hui

Paramètres

query (QuerySet) – Liste d’objets Django à traiter

ApiServer.views.postVote(request: django.core.handlers.wsgi.WSGIRequest) django.http.response.JsonResponse[source]

Poste le vote d’un utilisateur dans la DB à l’aide de l’username du password et de l’id du vote (respectivement les paramètres username, password, vote) Retourne le status de la requête, si tout s’est bien passé ou non

Paramètres
  • request (WSGIRequest) – Requête Django

  • username (str) – Paramètre passé à la requête, nom d’utilisateur du votant

  • password (str) – Paramètre passé à la requête, mot de passe du votant

  • vote (int) – Paramètre passé à la requête, id de la réponse du votant

Renvoie

Requête Django correspondante au renvoie d’un fichier JSON

Type renvoyé

JSONResponse

Exemple

[
    {
    "code": 200,
    "message": ""
    }
]