Lag en «custom» modul

Innl. frist: 
Søndag, 23. apr. 2017, klokka 24:00
Type: 
individuell oppgave

Kurs: INF5272

Hvordan levere: Legg til innhold → Innlevering (skal ikke leveres om du tar INF3272)

Bakgrunn

Drupal leveres med en rekke ferdige moduler, i form av core og såkalte “contributed modules”. Det er også mulig å lage egne moduler.

I Drupal kan man lage ny funksjonalitet ved å lage egne (custom) moduler i PHP og integrere disse med nettstedet.I denne oppgaven skal du lage en slik modul, og sørge for at den funksjonaliteten den tilbyr er integrert i gruppas nettsted.

Oppgave

I samråd med Gisle skal du velge ut en innholdstype/funksjon som egner seg for nettstedet din gruppe er ansvarlig for å realisere, eller en av de andre prosjektgruppene. Ta utgangspunkt i designnotatet utarbeidet av prosjektgruppen. Velg fortrinnsvis noe som er såpass komplekst at det eksponerer innhold for vanlige brukere, har et administrativt grensesnitt, benytter Drupal API, og gjør bruk av minst en egen tabell i databasen.

Du skal dessuten dokumentere denne implementasjonen.

Sørg for korrekt adgangskontroll, både når det gjelder visning av innhold, og det administrative grensesnittet. Det adminitstrative grensesnittet skal ha en spesifikk adgangskontroll som gjør gruppen som kan bruke dette avgrenset til redaktører (eller en annen avgrenset gruppe). Tilgang ut over dette bestemmer du selv. Gjør rede for de disposisjoner du har gjort mht. tilgangskontroll i dokumentasjonen.

Lag minst to eksempler/scenarioer der du benytter deg av den modulen som du har laget. Prøv, så langt som mulig, å gjøre eksemplene representative for bruk av modulen.

Synopsis

Her er en beskrivelse av hva dokumentasjonen bør inneholde. Dokumentasjonen leveres på vanlig måte som innhold ac Innlevering på kursnettstedet.

  • Navn: Menneskelesbart navn på modulen (dvs. hva den kalles når den dukker opp i det administrative Modules-panelet).
  • Beskrivelse: En kort beskrivelse av modulen. Bruk gjerne den samme beskrivelse som hook_help.
  • Tabell(er): En beskrivelse av de tabellene som du har benyttet. Husk å nevne eksplisitt hvilke menneskelesbare navn (Etikett du har gitt feltene, hvilken datatype (felttype) som er benyttet, og hvilket skjermelement (widget) som benyttes for å redigere dataene. Dersom du har benyttet deg av tilleggsmoduler for å få tilgang til nye datatyper, så må du også nevn navnet på disse tilleggsmodulene, og hvilke datatyper fra dem du har benyttet.
  • Veiledning: En kort beskrivelse av hva slags integrert veiledning du har implementert.
  • Eksempler: En kort beskrivelse av minst to av de eksemplene/scenarioene på bruk av modulen som du har laget. Forklar særlig hva som skiller eksemplene fra hverandre.
  • Navigasjon: En beskrivelse av hva slags navigasjon som leder fram til det administrative grensesnittet for modulen.

Her er en beskrivelse av hva implementasjonen bør inneholde.

  • En ny modul som er integrert i nettstedet og der redaktører og andre med tilgang skal kunne benytte.
  • Integrert veiledning (i form av ledetekster, hjelpetekster og feilmeldinger) som støtter opp om bruk av modulen.
  • Minst to eksempler (noder med innhold eller scenariorer for bruk) der den modulen du har laget er benyttet.