Skip to content

Omat tiedot

Kimmo Koskinen edited this page Sep 18, 2016 · 1 revision

Johdanto

Toiminnon käyttötarkoituksena on pystyä lähettämään omat tiedot uudelle leiritutulle sähköpostilla, WhatsAppilla tai muulla mitä kännykkä tarjoaa. Kaverin voidaan myös antaa ottaa valokuva tästä ruudusta tai sitten otetaan vaan kuvakaappaus, joka annetaan jollain tavalla kaverille.

Lisäksi toiminto houkuttelee laittamaan Kuksan perustiedot ajan tasalle.

Tiedot näkee vasta kirjauduttuaan, ja sitä ennen ruudussa näkyy kirjautumiskehotus.

Backend-kommunikointi

Tämän toiminnon tiedot tulevat appin paikallisesta storagesta. Jos siellä ei ole mitään, appi lukee tiedot backendistä ja tallentaa ne paikalliseen storageen. Tämän jälkeen ne sitten tulevat paikallisesta storagesta näkyviin.

Kielivalinnasta riippumatta palautetaan aina samat tiedot. Niinpä käyttäjän kielivalinnan muuttaminen ei vaadi, että tiedot luettaisiin uudelleen.

Tiedot tulevat backendistä täysin valmiina.

Käyttäjä ei pysty muuttamaan tietoja backendiin, mutta valokuvan, some-tilit ja kuvaustekstin käyttäjä asettaa paikallisesti. Tämä siksi, että niitä ei saada backendistä.

Käyttäjä voi halutessaan päivittää tiedot backendistä (jolloin ne tulevat ensin paikalliseen storageen ja sieltä ruutuun).

Käyttöliittymän toiminnot

"Yläpalkissa" on seuraavat toiminnot

  • Painike päivittää tiedot backendistä
  • Painike lähettää tiedot sähköpostilla, WhatsAppilla, yms., mitä kännykässä on järkevällä työllä tarjolla
  • Painike asetuksiin

Ruudussa kiinteästi ovat käyttäjän valokuva, kutsumanimi isolla, etu- ja sukunimi. Muut kuvassa ja JSONissa näkyvät kentät ovat vieritettävissä. Lisäksi

  • Ykköslippukuntakentässä on ykköslippukunta ja sen kunta
  • Valokuva on 100 x 133 px

Seuraavassa on esimerkkikuva näytöstä, mutta ei välttämättä malli käyttöliittymästä tai asettelustaEsimerkkikuva

Seuraavassa on kirjautumiskehotus, joka näytetään kun käyttäjä ei vielä ole kirjautunutKirjautumiskehotus

Seuraavassa on kirjautumisnäkymä, jonka tuottaa PartioID-kirjautuminenKirjautumisnäkymä

JSON

REST-kutsussa on mainittu kielivalinta, mutta se on luultavasti turha, koska samat tiedot tulevat aina kielestä riippumatta.

Lisäksi alla oleva JSON edustaa alkuperäistä tavoitetilaa, eikä välttämättä sitä, mitä backend todellisuudessa palauttaa.

/*=============================================================
  Roihu 2016 - Finnjamboree, July 2016
  Roihu App - Mobile Application
  -------------------------------------------------------------

  SPECIFICATION OF THE BACKEND REST API
  Sakari Kouti
  Created       Nov 11, 2015
  Last modified Feb  9, 2016
=============================================================*/

/*=============================================================
  READ USER INFO
=============================================================*/

/*-------------------------------------------------------------
  Request (Read user info)
  URI....: /me
  Method.: GET
  Headers: Authorization: Bearer ABC123 (OAUTH 2 token)
           What about an MD5 hash?
           Accept-Language: FI, SV tai EN
  Params.: None
-------------------------------------------------------------*/

/*-------------------------------------------------------------
  Response (Read user info)
-------------------------------------------------------------*/

{
  "last_modified" : "2016-01-14T12:45:06Z", /* when any of the fields was last modified */
  "firstname": "Pirjo", /* kutsumanimi */
  "lastname": "Partiolainen",
  "nickname": "Pinde",
  "phonenumber": "358501234567",
  "email_address": "[email protected]",
  "primary_troop_and_city": "Olarin Eräkotkat (Espoo)",
  "country": "Suomi/Finland/Finland", /* all three with all people */
  "scout_district": "Pääkaupunkiseudun Partiolaiset",
  "agelevel": "Aikuinen/Vuxen/Adult", /* all three with all people */
  "subcamp": "Metsola",
  "camp_troop": "117 Lommo",
  "description": "Tähän jotain viksua/Here something sensible",
  "public_accounts": "Twitter: ppartiol, Instagram: ppartiol",
  "photo": "AkjX234jS" /* Base64 encoding? */
}
Clone this wiki locally