24 augusti 2011

PHPBB Forum

Nu har jag äntligen lärt mig något nytt som PHP-programmerare och tänkte försöka dela med mig av min kunskap. Det jag tänkte skriva om idag är internets vanligaste programvara för forum. Mjukvaran heter PhpBB där BB står för Bulletin Board och koden är skriven i PHP med öppen källkod.

Att starta ett forum på det här sättet är jätteenkelt. Själva installationen består i av att packa upp en zip-fil och lägga på sin webbserver. Därefter finns en webbaserad guide som tar dig igenom installationsprocessen. Om du bara har koll på strukturen på din webbserver och hur man ansluter till webbhotellets databas så ska det inte vara några problem. Efter installationen finns 100-tals alternativ att välja bland för att få precis det forumet du vill ha.

Jag har sedan tidigare haft två PhpBB-forum. En för mitt korplags hemsida och en på företaget jag jobbar för, Winlas. Korplagets forum var dock inte använt på några år eftersom webbsidan i sig var så pass avancerad att det inte riktigt kändes att det behövdes. Nu hade jag däremot ambitionen att få till ett nytt forum som skulle vara mer integrerat i hemsidan och därmed förhoppningsvis användas i högre utsträckning. PhpBB har moddar och öppen källkod så att det ska gå att integrera den i din hemsida. De här modifikationerna ville jag göra:

  • · Integrera inloggningen med behörighetssystemet på huvudsidan.
  • · Exportera användarlistan från hemsidan och skapa samma användare, med samma lösenord i forumet.
  • · Stänga forumet så att inga nya användare kan registrera sig. Jag använder användarlistan så att spelare kan registrera sig till träningar och matcher och vill inte ha in användare jag inte har koll på.
  • · Visa senaste inläggen på forumet bland nyheterna på startsidan. Nyhetsfeeden är blandad i datum- och tidsordning där t.ex. matchresultat, info om träningar, blogginlägg och träningstider blandas. Användarna får själva välja vilken typ av inlägg de vill se genom en filtreringsfunktion.

Logga in på forumet ifrån startsidan på webbplatsen

Min inloggningsfunktion på startsidan var tidigare inte helt säker och lite ostabil. Jag tog därför tidigt beslutet att helt ersätta den gamla inloggningen med forumets inloggning. En sak som är bra med PhpBB och att det är så spritt och används av många webbutvecklare. Därför är det lätt att googla fram svar på vad man än kan tänkas fråga om. Inloggningsformuläret är bara några enkla input-rutor som skickar post-information till en funktion på forumet. Man behöver skicka med inloggningsnamn, lösenord, vilken sida användaren ska dirigeras till och om användaren vill fortsätta vara inloggad. Längst upp på sidan med inloggningsformuläret behöver man dessutom skapa en klass som skapar en session. Jag hade inga större problem så här långt. Tänk bara på att sidan man ska hamna på efter att loggat in dröjer några sekunder innan den laddas, då man först ser en bekräftelse på forumet att man har loggat in. På varje sida som ska kontrollera inloggningsstatus behöver man inkludera forumklassen. Jag lade den koden i en egen fil som jag includar längst upp på varje sida där det behövs.

Exportera en användartabell till forumets databas
Den här funktionen finns inte i ursprungliga forumet, utan jag var tvungen att hämta en expansionsmodul som kan stoppa in data ifrån en csv-fil i databasen.
Jag använda det här verktyget: http://www.phpbb.com/community/viewtopic.php?f=65&t=1494875
CSV-listan skapade jag genom en databasfråga där jag manuellt skrev ut semikolon och avskiljare i en while-loop ifrån den data sql-frågan generarade. Jag tänkte behålla den gamla databastabellen och har en dubbel uppsättning av användartabeller. PhpBBs inbyggda för inloggning i forumet/på hemsidan och den gamla som fortfarande lagrar behörighet och kopplingen till spelarprofilen. För att länka ihop tabellerna har jag en SQL-fråga på varje sida, där själva användarnamnet är främmande nyckel och länkar ihop tabellerna.

Stänga forumet för nya användare
Att inaktivera nyregistrering var det lättaste steget i min integration. Det finns en kryssruta när man loggar in som administratör på forumet under Allmänt -> Inställningar för användarregistrering och bocka för ”Inaktivera registrering” bland alternativen för kontoregistrering.

Visa senaste foruminläggen på hemsidans startsida
För att få till en full integration mellan hemsida och forum var det en viktig del att integrera senaste händelserna på forumet i nyhetsflödet på startsidan. Flödet består av en databastabell där jag manuellt sparat en post varje gång någon ny information sparas på hemsidan. Det finns för tillfället 23 olika typer av händelser. Att lägga in ytterligare en databaspost varje gång någon skriver ett inlägg i forumet var för avancerat då jag var tvungen att ändra för mycket i källkoden. Jag gick istället en enklare väg, med PHP-programmering som jag kan och är bra på: Databasfrågor och arrayer. Senaste inlägget sparas i en egen databastabell och går att söka upp med en relativt enkel SQL-fråga som sorteras efter tidpunkt inlägget skrevs. Jag får sedan fram hela det önskade dataflödet genom att först mellanlagra resultatet från SQL-frågan som hämtar ut loggen i en array, sedan lägga till arrayen med senaste poster i forumet och tillslut sortera arrayen efter datum och tidordning. Kanske inte en helt ulitmat lösning, men det fungerar och slutresultatet ser bra ut.

Nu blev det här mycket en beskrivning om hur min webbsida fungerar, men jag hoppas att någon hittar något som går att tillämpa på erat projekt. Det går att göra jättemycket med PhpBB-forum och det finns jättemycket information bara en Google-sökning bort.

07 juli 2011

Sorg

En kompis klagade på att jag bloggar för sällan här. Därför tänkte jag lägga in en uppdatering, som delvis förklarar varför jag inte har så mycket att säga. Jag varnar för att det kommer bli ett ganska pessimistisk och deprimerande inlägg som inte handlar något alls om webbdesign.

En jättetråkig sak hände i måndags. Min morfar dog. Mamma ringde på kvällen och meddelade. Jag reagerade lite konstigt. Först sa hon att hon hade tråkiga nyheter och jag satte mig ner. Mitt första svar var inte herregud vad tråkigt utan "Jag misstänkte det". Inte för att jag hade någon förnimmelse om morfar utan för att ingen brukar ringa mig på en måndag i vanliga fall. Det kom ändå lite hastigt. Han fick iofs en stroke för 2 år sedan, men han bodde kvar hemma med mormor och hade mått relativt bra senast jag hörde. Jag träffade honom sista gången i början av april. Han hörde lite dåligt, var lite rosslig i halsen efter stroken och såg kanske inte jättepigg ut. Men han var klar i huvet, vi pratade lite om sport t.ex.

Jag är ateist och är ganska övertygad om att det är slut där. Morfar fick inte lida utan det gick fort utan någon lång sjukdom. Han är jag inte orolig för. Det som jag tycker är det sämsta med döden är att det ett slöseri på kunskap och erfarenhet. Han har lärt sig saker under ett långt liv som nu bara är borta. Han var riktigt duktig på att lösa korsord, bra på att organisera och rolig. Jag är mest oroad över mormor som nu för första gången måste klara sig själv. Hon har också haft en stroke och behöver lite hjälp hemma. Hon har sagt att hon ska försöka bo kvar i huset, med lite städhjälp och någon som gör frukost till henne kommer det gå. Jag var och hälsade på henne igår tillsammans med min bror. Hon fick blommor och en lång kram av oss när vi kom. Hon är såklart jätteledsen och jag märker på henne att hon är rädd för att bli ensam. Mamma kom till henne i måndags och var till henne till igår, då jag skjutsade hem henne från Ulricehamn. Moster sov över i natt. Men någon gång måste man lämna henne ensam och jag är rädd att det är då tankarna börjar komma. Mormor och morfar borde ha varit gifta i ungefär 60 år. Det måste kännas väldigt konstigt att partnern helt plötsligt försvinner. Mormor har inte jättemånga väninnor som hon brukar umgås med. En granne kom över för att lämna blommor och mormor sa att de måste komma över så hon får någon att prata med. Alla grät. Jag måste också försöka följa med till Ulricehamn med mamma och pappa oftare. Men det blir ju självklart ändå inte samma sak. Jag lever i en helt annan generation, hon förstår inte något av mitt tekniska liv.

Morfar var relativt pigg in i det sista. Grannen såg honom vinka i fönstret dagen innan. Mormor och morfar åt kvällsmat som vanligt och hade kollat på Vem vet mest när morfar började få upp fradga och blod ur munnen. Mormor ringde ambulans, men det skulle dröja innan de kom, så mormor undrade om hon skulle ringa min moster, som är skolskötersa. Morfar tyckte inte de skulle besvära henne, men hon ringde ändå. Grannens dotter som är sjuksköterska kom också över och de började tillsammans göra hjärt-lungräddning. Grannens dotter kände ingen puls. När ambulansen kom efter 20 minuter fortsatte försöken att få igång hjärtat, de använde defibrillator och adrenalinsprutor direkt in i hjärtat. Mormor kommer ihåg att de hela tiden sa att de inte skulle röra honom. Det måste vara pga elchockarna. De fick lite liv i honom eftersom de höll på så länge som de gjorde, men i slutändan kunde de inget göra. Det hade inte hjälpt om ambulansen kommit tidigare utan det var nog tyvärr ganska kört från början. Både mormor, mamma och moster tyckte det var skönt att han slapp lida. Det var mindre än en halvtimme mellan han var helt pigg och tittade på Vem vet mest till han var borta. Det är kanske så man vill gå om man får välja?

Nu tänkte jag skriva lite om min egen sorg. Jag är känslig av mig och börjar lätt gråta. Jag tycker dock inte det är någon större idé att gråta i min ensamhet. På måndagkvällen hade jag inte hunnit bli ledsen än. Jag var bara själv hemma som vanligt, satt vid datorn och spelade Oxie och Farmville och chattade lite om sommarcupen vi ska ordna med fotbollslaget. På tisdag morgon vaknade jag jättetidigt (tio i sex) och tänkte på morfar och framför allt mormor och om hur hemskt det måste varit för henne när morfar föll ihop. Jag jobbade på som vanligt, har inte sagt något till mina arbetskamrater ännu, förutom via Facebook. Att jag är ledsen påverkar inte mitt jobb negativt. Snarare tvärtom att jag jobbar på mer än vanligt för att tänka på något annat lite, samt för att jag vill göra något nyttigt när jag blir påmind om att vår tid är ändlig. På kvällen trodde jag att vi skulle åka till mormor, men min bror gick tipspromenad med några vänner istället och jag ville inte vara själv hemma. Jag har varit ledsen och lite deprimerad sedan ett år tillbaka när det tog slut med min flickvän. Vad jag har varit mest deprimerad för är att jag inte har några nära vänner som kan trösta mig när jag är ledsen. Men den nedstämdheten har berott på att inget händer i mitt liv. Sorgen som kommer nu är för att hela sammansättningen i min släkt ändras. Morfar lämnar en lucka. Mormor blir ensam, julfirandena kommer bli annorlunda etc. Jag behövde någon att prata med. På jobbet SMS:ade jag med en ny kompis jag skaffade i Vartofta förra veckan. Jag sa att jag var ledsen för att morfar dött. Hon sa att hon finns för mig, men kunde tyvärr inte träffas den kvällen. Istället skrev jag till min kompis i Floby. Hon finns där för mig och jag åkte ut och träffade henne. Hon åt sallad på en pizzeria medan jag berättade lite om vad som hänt. När två av hennes kompisar kom pratade de en stund, jag gick t o m därifrån en stund medan de rökte eftersom jag är allergisk. Men sen frågade min kompis Sandra hur det var med mig, men "du vet vad". De andra frågade vad som hänt, jag berättade och började för första gången sedan det hänt att gråta. Det var trevligt att bara vara runt folk istället för ensam den kvällen. Jag behöver kanske gråta för att bearbeta sorgen. Efter det har jag gråtit mer. Inte mycket hemma, men hela förmiddagen på jobbet grät jag och jag gråter nu. Jag har ett asocialt jobb där alla sitter och tittar på varsin skärm. Jag tog inte lunch med de andra utan väntade till efter Camilla ätit. Men jag vet inte om jag vill prata om det med dem. Jag tycker det är jobbigt att prata under tiden jag gråter. Vill nog mest bara hålla om någon, men någon sådan finns inte. Därför var det skönt att krama mormor igår. Mamma fick också en kram.

24 mars 2011

På väg till Delphi-kurs i Göteborg

Det var länge sedan jag uppdaterade den här bloggen. Nu minns jag inte ens när det var senast. Och sitter på tåget mot Göteborg, så har ingen Internetåtkomst så jag kan kolla. Då jag glömt någon tidning att läsa tänkte jag istället försöka underhålla mig på tågresan genom att skriva lite här.

Nu är vi som sagt på väg mot Göteborg där jag och två kollegor ska ha utbildning för Delphi, programmeringsverktyget vi använder för våra grundprogram. Chefen hoppas att den här utbildningen kan vara inkörsporten för mig för att börja programmera mera. Nu jobbar jag inte alls med Windowsapplikationer utan ägnar största delen av min arbetstid åt att underhålla mina webbapplikationer. Jag tror inte jag kommit så jättelångt där jämfört med sist jag skrev, det är tre moduler jag sysslar med:

  • · WinLas Vikariekalender och WL Webbokning. Där vikarier anger när d e kan jobba och arbetsplatser bokar tillgängliga vikarier.
  • · Winlas Webb. Där chefer ser LAS-tid för att veta när personal kommer att konverteras till fast anställning.
  • · Winlas Personalanteckningar – ett webbaserat anteckningsverktyg journalsystem där kommuner kan skriva ner anteckningar om personal. Det finns också möjlighet att sekretessmärka anteckningar och välja vilka som ska få läsa vad.

Den sistnämnda applikationen är ny sedan sist. Det är mitt första helt egna projekt och jag hoppas få sälja in den till Kalmar kommun.

Förutom webbapplikationera har jag ansvar för att uppdatera vår hemsida och jag brukar få fixa med våra loggor och grafiska broschyrer då jag har högst kompetens med Photoshop på företaget.

Utanför jobbet har jag stannat upp lite med mina övriga projekt. Spelet XinY har i princip självdött. Det samma gäller tyvärr bokstavligen för Mössebergsfestivalen, då dess drivande kraft Lars-Åke Albinsson gick bort härom året. Det jag har kvar är korplagets hemsida, som är så komplett nu att inte så mycket behöver göras. Triathleten Davids sida pysslar jag också om då och då. Nu har jag också fått i uppdrag att göra en hemsida åt hans sambo som driver en stickbutik. Jag är dock i ett sånt ekonomiskt läge att jag inte känner att jag har behov att ta fler jobb om det inte är något som jag verkligen ty– tycker det är ett kul projekt. Fast anställning på Winlas och små utgifter gör att jag känner att jag har det bra ställt. Istället ägnar jag min fritid åt Farmville och Playstation 3. Ärligt talat har jag varit lite nere det senaste året sedan det tog slut mellan mig och min flickvän. Dessutom är jag väldigt lat.

Jag har funderat på vem som läser den här bloggen egentligen? Jämfört med andra ställen jag skriver väljer jag här att vara ganska formell med det jag skriver. I mina privata bloggar kan jag bli lite väl självutlämnande ibland, i motsatts till IRL där jag har hög personlig integritet och ett starkt behov av att ha kontroll på varje situation.Vem tror jag läser det här? Jag har märkt att om man Googlar på ”Fredrik Olsson Falköping” så kommer den här bloggen nästan längst upp på träfflistan. Något jag märkte när en kille som jag tränade badminton tillsammans med direkt visste vem jag var eftersom han också heter Fredrik Olsson. Likadant om man söker på ”Vikariekalendern” eller ”Winlas”. Och jag vill väl kanske inte att mina användare av webbapplikationerna ska få se för mycket av mina privata tankar.