http://www.jensgram.dk/

Nyheder på sitet

- Her vises 2009


Periode: (seneste 10 nyheder)

 jfmamjjasond
'01  5610  4911106
'021025693 52545
'0386453523 233
'0431  11225324
'051422211  111
'06  13 11221 1
'073 3  11 1 12
'08 11   1 1   
'092 1   1     
'10         122
'111           

Nyhedsoversigten på www.jensgram.dk informerer efterhånden lige så meget om mig selv som om nye tiltag på sitet. For overskuelighedens skyld er navigationen opdelt i perioder, og de enkelte nyheder kan kommenteres.

Til højre kan du vælge mellem de seneste 10 indlæg, et helt årstal eller en enkelt måned. Tallene angiver, hvor mange nyheder der er i hver periode.

CONTENT-elementet i TYPO3: Logostyring 10:02:36 @ 21-07-2009

I forbindelse med en aktuel freelanceopgave for Folkemusikkens Fælles Sekretariat er det et krav, at redaktører let kan udskifte sitets logo (iht. kampagner etc.). For at imødekomme dette krav oprettede jeg er "sysfolder" med delte elementer - herunder endnu en sysfolder kun med logoer (indholdselementer af typen "Image"):

TYPO3 back-end med sysfolders og indholdselementer (af typen Image).

Det aktuelle logo er det øverste synlige element: i dette tilfælde billedet "Beta" (titlen bruges som alt-tekst). I det følgende tages udgangspunkt i, at jeg i min skabelon har mappet lib.logo som container:

lib.logo = CONTENT
lib.logo {
  table = tt_content
  select {
    pidInList = 326
    selectFields = image,header
    max = 1
    orderBy = sorting
  }
  renderObj = COA
  renderObj {
    5 = IMAGE  
    5 {
      required = 1
      file {
        import = uploads/pics/
        import.field = image
        width = 928
      }
      altText.field = header
      wrap = <a href="/"> | </a>
    }
  }
}

Bemærk, at de markerede værdier (pidInList = 326 og width = 928) er rettet mod den aktuelle opgave. Værdien 326 svarer til ID'et på den sysfolder, der indeholder logoerne, jf. illustrationen ovenfor. 928 er logoets maksimale bredde i pixels (logoet skaleres proportionalt).

Du kan læse mere om CONTENT-elementet på TYPO3 Wizard, samt i dokumentationen.



Sikkerhed og brugerdata 16:02:20 @ 14-03-2009
Med inspiration fra http://guides.ricehigh.dk/?p=1, har jeg i dag revideret brugerhåndteringen på www.jensgram.dk. Det betyder, at passwrods ikke i fremtiden vil opbevares som MD5-hash. I stedet genereres ved oprettelse (og hvert login) et tilfældigt salt, der — sammen med et konstant (og hemmeligt) salt — benyttes til at kreere et salted SHA-256-hash af brugerens password.

Fordelen er, at brugerdatabasen nu ikke er meget værd, hvis den skulle komme i de forkerte hænder. Det er nemlig meget tidskrævende at brute force sig til brugerens "rå" password. Og hvert password skal brute forces individuelt!

Ved samme lejlighed opdagede jeg imidlertid, at der i tabellen var et ødelagt indeks. Det betød desværre, at brugertabellen måtte erstattes med en back-up fra januar i år :(

Pagination i PHP vha. JgPaginator 19:00:29 @ 17-01-2009

Der findes masser af bud på, hvordan man kan lave paging (pagination) i PHP. Nogle løsninger er håbløse, andre er for specifikke - og de sidste er som regel for komplekse! I det følgende præsenteres en simpel OO-tilgang, der kan håndtere de fleste behov.

Sådan begynder min seneste artikel til Eksperten.dk, som har fået titlen "Simpel, alsidig, objekt-orienteret pagination (paging) i PHP". Og det er faktisk lige præcis hvad den handler om!

I artiklen gennemgår jeg, hvordan man kan benytte en klasse til at lave paging på en både simpel og elegant måde. Du kan naturligvis copy-paste koden fra artiklen — som forøvrigt også er tilgængelig her på sitet, sammen med de andre E-artikler — men du kan også finde den blandt mine PHP-klasser (hvor den har fået titlen JgPaginator).

Ønsker du først at inspicere, kan du kigge forbi gæstebogen, hvor JgPaginator er i fuldt sving (se sidens kildekode). (En større revidering af gæstebogens indtastningsformular er påtænkt — og påkrævet, ikke mindst!)



Avanceret nyhedsnavigation 23:11:30 @ 03-01-2009
Jeg faldt i dag over en ret elegant visualisering af indlæg ift. enkelte måneder. (Jeg var i gang med at undersøge, hvordan jeg kunne slette forkerte favicons fra Firefox - de gemmes nu i SQLite, kan jeg berette.)

Det er for så vidt meget simpelt: Måneder ligger på førsteaksen, mens år ligger på andenaksen. De enkelte koordinater indeholder et link til månedens nyheder og viser det aktuelle antal.

Du kan se det i brug på nyhedssiden ved at klikke "avanceret" i den grå periode-boks øverst til højre.

— Godt nytår


© 2001–12 Jens Gram - www.jensgram.dk • Tlf.: 30 22 88 20 • CVR: 31 66 04 32 • 46,7 ms