Här berättas om mina vedermödor under webutvecklingsarbetet. För närvarande är det
            Kamphavet, Rö socken och Norrtälje Släktforskarförening jag arbetar med. De är skrivna
            i ASP.NET och C#. Många av sidorna använder sig av Accessdatabaser för att lagra
            sina data, därigenom behöver jag bara skriva en enda sida i stället för tusentals
            när det enda som skiljer dem är de data som presenteras.
        
        
            Jag är totalt självlärd som webutvecklare, har köpt en enda bok om ämnet (som är
            helt inaktuell nu i alla fall), men har lärt mig massor på bara några år genom att
            leta information på Internet. Det finns två webplatser som är överlägset bäst enligt
            mitt förmenande: w3schools.com och aspsidan.se.
        
            Med tiden kanske det blir mer allmän information här, men här kommer själva bloggen.
        
            
            
                | 2017-12-08 | Det var en tid sedan jag skrev något här, men de senaste två dagarna har jag kämpat
                    med ett eländes problem med Rösajten som jag lyckades lösa fortare än Loopias "SuperSupport".
                    Jag hade gjort några triviala uppdateringar till några sidor på Rösajten, laddat
                    upp dem och startat om ASP.NET. När jag sedan skulle gå in på hemsidan för att se
                    att allt såg bra ut möttes jag av ett gigantiskt, fullkomligt obegripligt felmeddelande:  
 Jag begrep förstås inte ett dyft av det där, mailade Loopias support och fick ett
                    artigt svar att de skulle titta på saken. Jag fick återställa Rösajten med hjälp
                    av Loopias backup (förträfflig funktion) medan jag försökte komma på vad som var
                    fel. Jag återställde alla ändrade filer från Loopias backup, laddade upp dem, och
                    då fungerade det naturligtvis igen. Sedan bytte jag tillbaka de ändrade filerna
                    en efter en och startade om tills det åter kraschade - då visste jag vilken fil
                    det var fel på. Till sist var de bara en länk i en av filerna som inte fungerade
                    och då var det lätt att se att jag stavat fel på filnamnet i länken. Tänk om servern
                    sagt "Hittar inte filen xxxx.pdf" i stället!
 | 
            
                | 2015-06-19 | En tid fungerade inte inloggningen för medlemmar på Rösajten. Medan Etanet var vår
                    ISP var port 1433 blockerad, så det gick inte att accessa databasen med SQL Server
                    Management Studio. När Telia tog över som ISP 27 maj började det dock fungera och
                    jag kunde se att loginsystemet spärrat användare som loggade in som medlemmar för
                    att någon försökt med fel lösenord för många gånger. Det där är ett ofrånkomligt
                    problem när alla medlemmar har samma inloggningsuppgifter - om någon klantar sig
                    för många gånger spärras alla medlemmar. Men nu vet jag i alla fall hur jag skall
                    göra om det händer igen: ta bort användaren i databasen (på 2 ställen!) och lägg
                    dit den igen! | 
            
                | 2015-05-08 | I dag ringde Etanets "second line support" (de som vet litet mer än dem man kan
                    ringa till) och talade om att Etanet blockerat port 1433, den som man kommunicerar
                    med MS SQL Server genom. Varför visste de inte och de kunde inte heller göra någonting
                    åt saken, men i slutet av maj skall Telia ta över Etanets nätverk, så man kan ju
                    alltid hoppas att problemet försvinner då. Tänk så mycket jobb vi hade sparat, både
                    jag och Loopia, om jag fått det beskedet första gången jag ringde Etanet! | 
            
                | 2015-05-06 | Efter ett par frustrerande månader har jag fått stil på inloggningssystemet till
                    Rösajten och Kamphavet. På båda sajterna finns kataloger som inte alla skall kunna
                    komma åt, t ex medlemssidorna på Rösajten, och hittills har webbhotellet Loopia
                    tilhandahållit en bekväm lösning där man kunde sätta lösenordsskydd på dem. Men
                    nu skall de byta server, och då tar de bort det gamla systemet. Det gällde alltså
                    att implementera ett nytt inloggningssystem som inte är beroende av Loopias gamla
                    system. 
                        I ASP.NET finns en mängd färdiga kontroller för att hantera inloggning, men det
                        tog sin rundliga tid att med massor av hjälp från Loopia support komma på hur de
                        fungerade. I princip behöver man bara skapa en login-sida med dessa kontroller och
                        ASP.NET ser till att man hamnar där om man klickar på en länk till en skyddad katalog.
                        Men ASP.NET utgår från att man använder en MS SQL-databas för att lagra användaruppgifterna,
                        och MS SQL har jag alltid skyggat från för att hela konceptet är svårbegripligt
                        - inte alls så visuellt och lätthanterat som MS Access. MS SQL Server huserar på
                        servern och kan inte installeras på ens egen dator utan att det kostar skjortan.
                        För en något rimligare kostnad (ca 500 kr/år) kan man få en egen databas upplagd
                        på servern hos Loopia. I teorin skall man med hjälp av en (gratis) applikation som
                        heter MS SQL Management Studio kunna komma i kontakt med sin databas på servern
                        och hantera den, men det enda besked man får från Management Studio är att databasen
                        inte finns. Efter tjogvis med mail till supporten gav de upp - av något skäl kan
                        min dator inte kontakta databasen. (Se förklaringen i inlägget ovan!) 
                        Efter mycket trasslande fick jag ändå inloggningen att fungera lokalt - med en (ganska
                        tafflig) applikation som ingår i Visual Web Designer Express (ASP.NET Configuration)
                        kan man lägga upp användare och åtkomstregler för dem. Då skapas en MS SQL Express-databas
                        i /App_Data på den egna datorn med användare och lösenord, och sedan går det att
                        köra lokalt. Men... SQL Server lagrar inte data i det filformatet, och det går inte
                        att bara ladda upp databasfilen som man gör med MS Access. 
                        Man måste alltså att lagra sina användardata både lokalt i SQL Server Express (för
                        att kunna provköra innan man laddar upp) och på servern i SQL Server. På den egna
                        datorn hittar Login-funktionerna den lokala databasen utan problem, men det går
                        som sagt inte att tala om för dem att hämta dem från servern - för den "finns ju
                        inte". Åtkomstreglerna skrivs in i en särskild liten web.config-fil i var och en
                        av de kataloger som skall skyddas, och de är bara att ladda upp. Däremot vägrade
                        mina login-funktioner envist att erkänna att det fanns någon MS SQL-databas på servern.
                        Till sist levererade supporten en "connection string" som skulle skrivas in i sajtens
                        huvud-web.config - men absolut inte i den lokala huvud-web.config, då slutade det
                        att fungera, för connection string säger ju att SQL Server-databasen ligger hos
                        Loopia, och den finns ju inte enligt min dator! 
                        Det blir alltså två huvud-web.config för varje sajt att hålla ordning på och inte
                        blanda ihop. Eftersom MS SQL Management Studio inte kan kontakta server-databasen
                        kunde jag inte lägga upp några användare, utan supporten fick skapa en administratörsanvändare
                        åt mig. Så fick jag skriva en särskild administratörssida för att skapa användare
                        och lösenord (kontroller för det finns i ASP.NET - egentligen a piece of cake att
                        implementera, även om somliga funktioner inte går att anpassa till hur jag vill
                        att de skall se ut - vad jag kommit på hittills, vill säga.) Så fick jag komplettera
                        alla de särskilda web.config-filerna så att folk som legalt loggat in på ett konto
                        i den ena sajten inte skulle få se skyddade kataloger på den andra sajten - alla
                        användare ligger i samma MS SQL Server-databas. Det gäller att ha tungan rätt i
                        mun, men notationen är ganska rättfram: <deny users="användarnamn" /> respektive
                        <allow users="annat användarnamn" /> . 
                        ASP.NET innehåller som sagt en mängd kontroller för inloggningssystem. Den viktigaste
                        är förstås <asp:login> som presenterar textrutor där man kan skriva in användarnamn
                        och lösenord och klicka på en logga in-knapp. Sedan kollar kontrolen att namn och
                        lösenord stämmer med databasen, och om de gör det så blir användaren inloggad tills
                        han loggar ut eller lämnar sajten. Om användaren har <allow users="användarnamnet"
                        /> i web.config-filen i den katalog han vill besöka så får han göra det, annars
                        åker han tillbaka till login-sidan.
                     
                        Andra användbara kontroller är t ex <asp:LoginView>, som visar om man är inloggad
                        eller ej, <asp:LoginName>, som visar vilket användarnamn man är inloggad med
                        och <asp:LoginStatus>, som visar en länk för att logga in eller ut, beroende
                        på vilket tillstånd som är aktuellt. För administratörssidan finns <asp:CreateUserWizard>,
                        som låter en skapa nya användare och lösenord, och <asp:ChangePassword>, som
                        låter en ändra sitt eget lösenord. Det där sista är ett ännu olöst problem
                        - för på mina sajter är det bara adminstratören som skall kunna ändra lösenord,
                        t ex när ett nytt verksamhetsår börjar. Det problemet får jag ta tag i när det börjar
                        lacka mot jul.
                     
                        Har Du samma eller liknande problem med Din sajt så hör gärna av Dig med ett mail,
                        jag hjälper gärna till med litet mer detaljerade råd. | 
            
                | 2014-09-02 | Några dagar har jag besvärats av ett märkligt fel på Rösajten: om man bara skrev
                    in grund-URL:en (dvs. http://www.rosocken.se/) så fick man upp en gammal startsida.
                    Om man däremot skrev ut hela URL:en till startsidan (http://www.rosocken.se/Default.aspx)
                    så blev det rätt. Tyvärr tittade jag inte efter vad den sidan jag fick upp hette,
                    då hade jag nog begripit fortare. Det visade sig nämligen att förutom Default.aspx
                    fanns en sida som hette index.html i rotkatalogen - hur i allsin dar jag lyckats
                    skapa och ladda upp den har jag ingen aning om, den fanns inte på min lokala sajtkopia
                    där jag lagrar alla nya filer innan jag laddar upp dem - ett mysterium. Att jag
                    fick upp index.html i stället för Default.aspx beror på att servern har en strikt
                    ordning för att söka igenom en grund-URL efter en startsida, och index.vadsomhelst
                    kommer före default.vadsomhelst. Nu är problemet emellertid löst, jag behövde bara
                    radera index.html på servern. | 
                    | 2013-09-15 | Den 21/8 fick jag OK från NSFF:s styrelse att flytta deras webbplats till en server
                        hos Loopia. Det var väl ingen som betvivlade mina argument, men det skulle ju ändå
                        fattas ett formellt beslut. För att göra flytten krävdes ett antal åtgärder: 
                            Mycket var ju gjort genom att registren skrivits om till ASP.NET och redan låg på
                        vår egen webbplats, men de måste kompletteras med en Master Page med allt gemensamt
                        innehåll som menyer o dyl. Det gjorde jag genom att skapa nya, tomma sidor länkade
                        till mastern och sedan klippa in koden från respektive sida - mycket säkrare än
                        att peta i varje sidas kod och försöka få allt rätt.webbplatsen skrivas om från HTML och Perl till ASP.NET och C#ett konto öppnas hos Loopiawebbplatsen laddas upp till det nya webbhotellet och provkörasdomännamnet överföras till Loopianamnservrarna ändras så att de pekade på Loopia-webbplatsen i stället för Crystone-webbplatsen Så behövde jag skriva om alla html-sidor på Crystone-servern till ASP.NET - det
                        var inte så många, och var mest att klippa och klistra. Det jobbet var i stort sett
                        klart redan när beslutet togs.
 Att öppna ett konto hos Loopia och ladda upp filerna var förstås inget problem,
                        men när jag skulle börja provköra skar det sig direkt! När man försökte söka i någon
                        av databaserna fick man en av de värsta felsidorna med oceaner av obegriplig information.
                        Efter mycket frustration fick jag reda på att Loopia lagt sajten på en server som
                        saknade stöd för MS Access! När de väl begripit att jag MÅSTE ha Access tog det
                        bara en halvtimme innan saken var ordnad. Efter ett par dagars provkörning kände
                        jag mig mogen att dra igång den nya sajten och begärde en transferkod från Crystone.
                        Den kom snabbt via mail, och på Loopias kontrollpanel väljer man "lägga till domännamn"
                        och anger transferkoden. Sen tog det ett par dagar innan den svenska domännamnsadministrationen
                        "punktSE" noterat att Loopia tagit över som "registrar" som det heter.
 Nu återstod bara att peka om namnservrarna så att de visste att norrtelje-sff.se
                        låg hos Loopia. Det gör man också på Loopias kontrollpanel under rubriken "Byt namnservrar":
                        man bara skriver i ns1.loopia.se respektive ns2.loopia.se i stället för motsvarande
                        på crystone.net. Men... efter en stund står det crystone.net där igen - uppgiften
                        hämtas från en rotserver, och man har ingen aning om ens begäran fungerat eller
                        om någonting pågår. I och för sig varnas för att det tar några timmar, men jag prövade
                        gång på gång de närmaste dagarna och hamnade alltid på Crystone-sajten när jag skrev
                        in www.norrtelje-sff.se i Internet Explorer. Efter en vecka frågade jag om något
                        hänt, och då erbjöd man sig att göra bytet åt mig. Visst sade jag, och efter ett
                        tag fungerade det. Undras allt om det där med att byta själv verkligen går!
 Nu borde allt ha varit frid och fröjd, men när jag testade igen så kom den förfärliga
                        felsidan tillbaka när jag testade de databasdrivna sidorna! Nära panik, nu hade
                        jag ju annonserat till styrelsen att allt var klart, och de viktigaste sidorna på
                        hela sajten fungerar inte! Efter en stund kom jag ihåg att det sett likadant ut
                        när de lagt sajten på en server utan stöd för MS Access och ringde deras support
                        - jo, visst den ligger på en server utan stöd för Access. Jamen VAFF...!!! som Berglins
                        figurer utbrister. Tebax, tebax, sade jag, och det skulle de naturligtvis göra -
                        fast hade jag inte själv begärt flytt till den här servern den 6 september? Otänkbart,
                        sade jag, jag MÅSTE ju ha Access! Men i deras detaljerade loggar hittade de en notering
                        att jag bytt "plattform" från ASP till ASP.NET; jo, jag hade ju upptäckt att webbsajten
                        av någon anledning hade alternativet ASP inställt, och det kan ju inte vara rätt
                        när hela sajten är skriven i ASP.NET? Men - att ett alternativ hette ASP.NET och
                        ett ASP hade inget med saken att göra - alternativet ASP.NET betydde modernare server
                        utan stöd för Access, och alternativet ASP betydde ASP och ASP.NET och
                        Access, fast en äldre server. De borde nog fila litet på förklaringarna på den sidan,
                        Loopia. Men på det hela taget var deras support beundransvärd: snabb, pedagogisk
                        och effektiv.
 Så nu snurrar det. Och en rättelse i personregistren tar mig 10 minuter i stället
                        för att vara i princip omöjlig!
 | 
                
                    | 2013-07-19 | Till sist blev jag ändå klar med alla släktforskarföreningens fem register. Konverteringen
                        innehöll alla de problem jag mötte med Döda i Roslagen, och en hel del nya. Värst
                        var det stora Vätöregistret (19500 poster). Ett exempel: ålder och födelsedatum
                        stod i samma kolumn - åldern dessutom i ett antal olika format - t ex 26, 26å, 26
                        år. Epitet, namn och platser var inskrivna utan försök till normalisering, så det
                        tog en del tid att ensa upp. Vätö är dessutom extra krångligt, för församlingen
                        delades 1914 i Vätö och Björkö-Arholma - vad skulle man skriva i kolumnen "hemförsamling"
                        för platserna efter 1914? Nå, till sist blev det klart - en applåd till den arbetgrupp
                        som jobbade med Väddö fram till 2009, men till sist tvingades lägga ned projektet
                        - normaliserat, logisk struktur, konsekvent formatering - det tog mig bara en eftermiddag
                        att göra databas av de filerna. Nu har jag lagt ett förslag till styrelsen att lämna
                        Unix-världens problem bakom oss och skriva om hela sajten till ASP.NET - jag lär
                        få anledning att berätta om det äventyret! | 
                
                    | 2013-05-21 | Efter två intensiva veckor med tidvis 12 timmar vid datorn om dagen kunde jag i
                        dag ladda upp en ny version av NSFF:s Register över döda i Roslagen 1900-1949. Registret var ett av de fem på NSFF:s webbplats som bygger på perl-skript som söker
                        i en kommaseparerad textfil; omöjliga att flytta till en Windows-server, omöjliga
                        att underhålla och dessutom klarar de inte svenska bokstäver i söksträngarna. Jag
                        har länge irriterat mig på detta och försökt att lappa över problemet med de svenska
                        bokstäverna, men när det trots detta inte fungerade insåg jag att det var dags att
                        göra något radikalt.
 Att konvertera en kommaseparerad textfil till en relationsdatabas är dock rätt jobbigt;
                        man kan i och för sig lätt importera textfilen till Excel, men det är då man ser
                        inkonsekvenserna och förvirringen i textfilen, som faktiskt bara är en avskrift
                        av dödböckerna i församlingarna inom Norrtälje kommun. I bland har prästen satt
                        kvinnors flicknamn tillsammans med efternamnet, i bland bland anmärkningarna. Folk
                        som dog i en församling fast de var kyrkskrivna i en annan står alltsomoftast på
                        två ställen i det gamla registret. Det var dessutom bokstavstroget avskrivet, så
                        där fanns otaliga varianter av stavning.
 Konverteringsarbetet handlar framför allt om att separera de data som skall vara
                        sökbara från den ursprungliga texten. I många fall fanns kommatecken mellan efternamn
                        och förnamn, och kvinnors flicknamn föregicks av "f.", men långt från konsekvent.
                        Med hjälp av HITTA- och EXTEXT-funktionerna i Excel särade jag på efternamn, förnamn
                        och tidigare namn, och behövde bara korrigera några tusen fält - hela databasen
                        innehåller litet över 24000 poster.
 Att parsa anmärkningsfältet, där epitet, namn, hemförsamling och allt möjligt stod,
                        var extra jobbigt. Epitet skulle till epitetfältet, hemförsamling till hemförsamlingsfältet,
                        och plats till platsfältet. Det blev många HITTA och EXTEXT, med olika målsträngar
                        för HITTA - i bland var någon "i" en plats, ibland "från", i bland föregicks platsen
                        bara av ett komma. Global substitutes som från "i" till "," är dessutom jätteriskabelt
                        - man vet aldrig vad som händer och måste läsa igenom varenda post för att kolla
                        att det blev som man tänkt sig - och det blev det i många fall inte!
 Det värsta problemet - som var helt onödigt om jag fått ett tips från Jan Faith-Ell,
                        som realiserade det gamla registret, litet tidigare. Det beror på att Excel anser
                        att världen uppstod den 1 januari år 1900. Alla tidigare datum anser Excel vara
                        en text, och alla data från dag 1 (1900-01-01) på ISO-datumformat konverterar Excel
                        till ett datumnummer, fast det visas som ett ISO-datum. Och det är skvatt omöjligt
                        att få Excel att betrakta sådana data som en text. Hur jag än gjorde när jag importerade
                        Excel-filen till Access så blev alla datum efter 1900-01-01 i stället dagnummer.
                        Jag lyckades till sist piska Access till lydnad genom en mängd omvägar och mödosamma
                        konverteringar, men alldeles i onödan. Jans tips var helt enkelt att använda samma
                        datumformat som i Sveriges Dödbok, där man slopar bindestrecken mellan år och månad
                        och mellan månad och dag. Hokus pokus! Utan bindestrecken har Excel inga problem
                        att hantera datumet som text!
 En sista erfarenhet också: Det finns ju något som heter "Autofilter" i Excel. Högst
                        praktiskt, man kan direkt sortera på valfri kolumn, välja vilka rader som skall
                        presenteras etc. Fällan är, att om man lagt till en extra kolumn på slutet efter
                        att man aktiverat autofilter så följer den inte med när man sorterar på en av de
                        autofiltrerade kolumnerna! På det viset förlorade jag ungefär 500 kyrkboksreferenser
                        till de rader där jag varit tvungen att kolla i källan vad det egentligen stod.
                        Lägg aldrig till en kolumn på slutet! Lägg till den före den sista autofiltrerade
                        kolumnen och flytta den sedan!
 Nu har jag fyra register till att konvertera; tre är ganska måttligt stora, men
                        det fjärde är ett monster, nästan dubbelt så stort som det här, som tog mig 95 timmar
                        att göra.
 | 
                
                    | 2012-08-01 | Att ta hand om gamla webbläsares fel är inte lätt. Nyligen slutade den särskilda
                        .css-filen som skulle ta hand om felen i Internet Explorer 7 att fungera. Jag letade
                        länge och väl efter en förklaring till att allting blev förvrängt i IE7, men till
                        sist insåg jag att det inte är värt besväret att försöka skapa specialfunktioner
                        som kompenserar för alla fel i IE7. Så nu är det slut, Kamphavet fungerar i fortsättningen
                        bara i moderna webbläsare - IE 8 eller 9, Firefox, Chrome, Opera eller Safari. | 
                
                    | 2012-03-29 | När Sven-Olov Gahnström efter mycket arbete skapat en Excelfil med länkar till alla
                        historiska lantmäteriakter på Lantmäteriets webbplats som rör Norrtälje kommun laddade
                        vi upp den till föreningens webbplats. Tyvärr visade det sig att den var så stor
                        att det tog en evighet att ladda ned den. Jag beslöt då att testa min idé att lägga
                        den som databas på Kamphavets Windows-server och länka dit från släktforskarföreningens
                        webbplats. 
                            Det visade sig vara mer jobb än jag hade trott, men nu är den äntligen uppe och
                            fungerar. För det första behövde jag skapa en databas med alla uppgifterna från
                            Excel-filen; den var indelad i 26 flikar (en för varje socken) och jag behövde ju
                            en enda tabell. Jag fick alltså kopiera in alla raderna (över 12000 st) i ett Excelark
                            och lägga till en kolumn med sockennamnet. Jag behövde också en ny nyckelkolumn
                            med unika radnummer, för från början fanns en nummerserie för varje socken. Detta
                            var ju dock en smal sak med Excels autofyll.
                         
                            Så behövde jag lägga själva länkarna ensamma i en kolumn, och det var svårare, för
                            i Excel ligger de gömda i varje cell som har en länk och kan bara kopieras en och
                            en. Jag hittade ingen funktion i Excel som kunde extrahera själva länken och spara
                            den i en annan kolumn, men efter mycket grubbel kom jag på att jag kunde exportera
                            Excelarket till html-format, läsa in den i Excel igen som text och sedan var det
                            "bara" att rensa bort alla rader som inte behövdes. Det blev omkring 80000 rader
                            html-kod, varav jag bara behövde bara 24000. Det tog en stund, om man säger så,
                            men genom att sortera dem kunde jag radera jättelika sjok med rader som innehöll
                            allt möjligt html-skräp som jag inte var intresserad av. Radnumren hamnade t ex
                            på en egen rad och måste kopieras snett nedåt för att hamna på samma rad som länken.
                            Men just sådant är Excel suveränt till.
                         
                            Sedan kunde jag klippa in kolumnerna med de frilagda länkarna och deras nummer i
                            det ursprungliga bladet, och kontrollera att rätt rad fått rätt länk. Jag kunde
                            enkelt kolla detta genom att skriva en funktion "om ursprungligt radnummer är skilt
                            från länkens radnummer skriv "FEL" annars ingenting" till varje rad. Trivialt i
                            Excel. 
                            Sedan hade jag tänkt att det skulle bli "a walk in the park" att importera den nya
                            Excelfilen till MS Access, skriva en urvalsfråga och svänga ihop ett par aspx-sidor
                            för att söka och presentera resultatet. Det första jag upptäckte var att Loopia-servern
                            inte kan hantera Access 2010-databaser och fick konvertera den till Access 2003.
                            Så behövde jag en dropplist med de socknar som finns och en annan som visar de platser
                            som finns i respektive socken. Där visade det sig att Lantmäteriets hemsida, där
                            Sven-Olov hämtat datat, inte är särkilt väl normaliserad - på en del ställen stod
                            det inte platsnamn utan långa haranger om "uppmätning av tomtgränsen mellan herrarna
                            X och Y...". Jag fick syssla en hel del med att ändra platsnamnen till mer konsekventa
                            och kortfattade texter. 
                            Till sist såg det ändå skapligt ut, och jag kunde göra en ny html-sida på släktforskarföreningens
                            webbplats där jag lade in en iframe som länkade till aspx-sidorna på Kamphavet.
                            Och det fungerar! 
                            En liten sak fattas bara, jag skulle vilja ha med alternativet "Alla platser" när
                            man valt en socken. Det bör gå hyggligt lätt, men jag åker nog på att skriva litet
                            C#-kod som byter ut söksträngen till databasen när man väljer "platsen" Alla.
                         
                            Vill Du titta på hur det blev så klicka 
                                här, välj "Forskarhjälp", leta upp "Register över skannade lantmäterihandlingar
                            för Norrtälje kommun" och klicka på knappen bredvid. Eftersom jag inte kan använda
                            Master pages på Unix-servern utan måste ligga kvar i uråldriga "frames" kan jag
                            inte ge en länk direkt till registret, för då tappar man headern, menyn och footern.
                            Ett gott exempel på varför master pages är en bättre lösning än frames!
                         | 
                
                    | 2012-02-06 | Efter ett antal månaders jobb med släktforskarföreningens sajt kunde jag ladda upp
                        den med nya designen den 18/1. Sidornas utseende är ensat och förenklat, fast de
                        perl-drivna registren är kvar tills vidare - när jag får tid skall jag börja konvertera
                        dem till databaser. Tanken är att lägga dem på Kamphavets Windows-server och länka
                        dit från de övriga sidorna. Vi får se. | 
                
                    | 2011-10-17 | Sommaren gick åt till att ge rosocken.se en rejäl ansiktslyftning i samband med
                        att vi bildade Rö hembygdsförening, men nu har jag tagit tag i Norrtälje släktforskarförenings
                        hemsida igen. 
                            Som jag tidigare berättat är den skriven i någon tidig version av html och full
                            av JavaScript och perl-kod. Not my cup of tea, alltså. 
                            Men något måste göras, strukturen är obeskrivligt snårig (den har helt enkelt kommit
                            till efter hand - en lång rad av webmasters har lagt in nytt innehåll utan att fundera
                            över struktur) och det är så många formella fel i koden att man inte ser de allvarliga
                            felen bland de hundratals oviktiga. Färgsättningen är förfärlig, illgrönt och knallila
                            och jag vet inte vad. Hundratals font- och center-taggar som säger samma sak som
                            de som redan gäller. Fritt svävande cell-taggar (td) i tabellerna - ett under att
                            sidorna ser så pass skapliga ut som de gör. 
                            Det finns också flera register som flitiga mäniskor skrivit av från kyrkböckerna.
                            De är lagrade som semikolonavgränsade textfiler, sökningen och presentationen görs
                            med perl-kod. Hela sajten ligger naturligtvis på en unix-server, så jag kan inte
                            använda ASP.NET med dess bekväma databaskopplingar. 
                            Först tänkte jag skriva om hela sajten till ASP.NET på en subdomän till kamphavet.se,
                            byta servermiljö på släktforskarsajten och sedan skyffla över en fix och färdig
                            sajt till Crystone, där den nuvarande ligger. Det kräver dock väldigt mycket arbete
                            just att göra om alla registren till riktiga databaser och under tiden måste ju
                            släktforskarsajten hållas uppdaterad. Jag släppte den idén. 
                            Nu satsar jag i stället på att skapa en parallellsajt på Crystone-servern med en
                            vettig struktur, där jag undan för undan kopierar över sidorna när jag har städat
                            upp dem. När den fungerar kan jag visa den för styrelsen och diskutera menystruktur,
                            layout, färgsättning mm. Naturligtvis lägger jag så mycket jag kan i en stilmall,
                            så att det blir enkelt att ändra i efterhand. 
                            Ett av problemen är att sökvägarna till registren ligger som hårdkodade serveradresser
                            i perl-koden; ändrar jag dem så måste jag ändra dem igen när jag sjösätter den nya
                            sajten - strul är oundvikligt! Därför får de många mapparna med registrens textfiler
                            ligga kvar där de ligger, direkt under roten, tills jag gjort om registren helt
                            och hållet. Kanske kan jag lägga dem på kamphavet tillfälligt och länka dit tills
                            Crystone-servern bytt miljö? Iframes?
                         
                            Utan ASP.NET får jag hålla mig till frames och vanlig html - det leder till en del
                            dumheter, som att folk kan googla upp enstaka sidor direkt och missa det övriga
                            innehållet, så jag måste lägga en länk till startsidan på varenda sida (och ta bort
                            dem igen när det hela är klart). 
                            Ett annat problem är bildarkiven, som är gjorda automatiskt med en äldre version
                            av Photoshop. I den version jag har finns bara brokiga och tramsigt animerade mallar
                            med amerikansk dålig smak, som jag inte kan förmå mig att använda. Å andra sidan
                            presenteras bilderna nu helt utan kommentarer - filnamnen är den enda ledning man
                            får för att gissa vad bilderna föreställer - så det får nog skrivas ett antal "reportage"
                            med bilder från respektive begivenhet i stället. Rätt mycket research att göra! 
                            Du som läser detta och intressserar Dig är välkommen att titta på den nya sajten
                            och komma med råd och synpunkter. Fast det tar nog ett par dagar innan jag laddar
                            upp de första sidorna. | 
                
                    | 2011-05-16 | Jag har givit mig på den gamla utmaningen att skifta överlägg på en gemensam kartbakgrund.
                        Skälet är förstås att Lantmäteriet tar så hutlöst betalt om man vill använda deras
                        kartor på nätet. 
                            Principen är ju enkel - man lägger en delvis genomskinlig grafik i en div ovanpå
                            div:en med kartan. Det är ju rätt lätt, grafik-div:en behöver bara ges position:relative
                            och top:minus kartans höjd i pixels. Problemet är i stället att skapa de genomskinliga
                            delarna av grafiken.
                         
                            Jag känner bara till två grafikformat som kan hantera genomskinlighet: GIF och PNG.
                            Med GIF kan man hantera figurer med total genomskinlighet, men inga finesser. I
                            PNG (32-bitarsversionen) sägs att man kan ge varenda pixel ett genomskinlighetsvärde
                            ... hmmm! Vad jag ville göra den här gången var att måla de delar av kartan som
                            låg under havsytan vid en viss tidpunkt (men gärna halvgenomskinligt, så att man
                            känner igen sig i kartan och delar av platsnamn mm inte blir helt dolda). De delar
                            av kartan som låg över vattenytan även på den tiden skulle förstås visas utan någon
                            övermålning. Om man kunde måla vissa delar av grafiken i "helt genomskinlig färg"
                            och det övriga i "delvis genomskinlig färg" skulle det rimligtvis bli så
                            snyggt! 
                            Jag använder PAINT.NET som grafisk editor, den kan mängder av konster som jag bara
                            förstår hälften av. Menyerna antyder att det bara är att välja en färg och tala
                            om vilken grad av genomskinlighet den skall ha, men av någon anledning händer ingenting
                            när jag "målar" med genomskinlig färg. Det är något jag inte begriper här.
                         
                            Efter många dagars trixande med PowerPoint (som har den bästa funktionen för att
                            rita kurvor och polygoner - jag behövde det för att lägga in strandlinjerna i kartan)
                            kunde jag exportera PowerPoint-bilderna till PNG-filer, men när jag sedan skulle
                            måla dem genomskinliga i PAINT.NET funkade det inte, hur jag än försökte.
                         
                            Till sist fick jag kasta in handduken, men hittade i stället en funktion för att
                            sätta genomskinlighetsgraden för hela bilden. Resultatet blev "så där" - det syns
                            att vissa områden blir mörkare (där grafiken är knallblå!), men även de delar av
                            kartan som skulle synas oförändrade är förstås litet mörkare. Det här hade gått
                            att hantera i GIF!
                         
                            Jag tillämpade då "80-20-regeln" (80 % av resultatet kräver 20 % av arbetet, de
                            resterande 20 % av resultatet kräver 80 % av arbetet) och publicerade den nya sidan
                            i dag - någon dag kanske någon kan tipsa mig om hur man målar genomskinligt i PNG! 
                            Kan Du det så hör av Dig! Vill Du titta på resultatet så gå till 
                                Rösajten/Förhistoria/Strandlinjeförskjutning | 
                
                    | 2011-04-25 | För en tid sedan blev jag "websideredaktör" för Norrtälje Släktforskarförening och
                        fick ansvaret för en webplats som innehåller mängder av gamla html-sidor och perl-skript.
                        Tar man upp en av dessa sidor i Visual Web Designer får man något hundratal felmeddelanden
                        per sida, så det finns en del att göra. De flesta felen är lyckligtvis
                        bara formella - t ex får man numera inte använda versaler i taggar, så med några
                        "global substitute" kan man fixa tusentals fel på en gång. Värre är det med perl-skripten;
                        jag har besvär nog med javaskript (som jag nalkas med stor nervositet, jag har nog
                        inte riktigt förstått vad det är egentligen). Efter några veckors eftertanke har
                        jag nog bestämt mig för att skriva om hela webplatsen till ASP.NET och C# - det
                        blir antagligen betydligt mindre jobb än att sätta sig in i perl och i stället för
                        att bli en dålig perl-programmerare kan jag bli en något bättre C#-programmerare. | 
                
                    | 2010-12-13 | För ett tag sedan tog jag steget att köpa licenser för att använda moderna kartor
                        i vissa av sidorna på Rösajten. 
                            På Lantmäteriets webplats kan man bland annat köpa digitala
                            kartor över ett område man väljer själv. Där finns bland annat rasterversioner av
                            de moderna kartserierna, dvs. Sverigekartan, Översiktskartan, Fjällkartan, Vägkartan,
                            Terrängkartan, Fastighetskartan och Tätortskartan. Jag valde terrängkartan i skala
                            1:50000 och 5 m upplösning och jpg-format; ett kartutsnitt på 13 x 13,4 km (2600
                            x 2680 pixels) kostade 433,50; inte oöverkomligt. Tar man upp kartan direkt på skärmen
                            ser man förstås bara en del av den, så innan jag kunde använda den på websidorna
                            fick jag beskära den och minska upplösningen till 1000 x 1300 pixels. Tyvärr kräver
                            även det att man skrollar, men hade jag minskat upplösningen ännu mer hade det inte
                            blivit mycket kvar av kartbilden. (Med ursprungliga 5 m per pixel är kartan fantastiskt
                            klar och tydlig!)
                         
                            Det finns emellertid ett aber med att använda dessa fina kartor på websidor: Lantmäteriet
                            vill ha en licensavgift för varje websida som innehåller kartinformation. Försäljningen
                            sköts av Metria, som har en förvirrande sida med användningsvillkor som är mycket
                            förmånligare än de som verkligen gäller. Jag tyckte det var "too good to be true"
                            och frågade, vilket kanske var dumt, och mycket riktigt gäller Metrias villkor inte
                            för de här kartorna. Lantmäteriet vill ha 450 kronor för varje websida, och dessutom
                            500 kr i startavgift, så det kan inte bli särskilt många sidor med kartbakgrund.
                            Lantmäteriets historiska kartor (t ex Häradsekonomiska kartan, Ekonomiska kartan
                            och alla kartorna i Lantmäteriarkiven), är däremot gratis att använda enligt ett
                            mail jag fick för något år sedan när jag frågade vad det kostade.
                         
                            Jag använder kartorna t ex för att visa var bortglömda platser låg - jag lägger
                            kartan som bakgrund i en PowerPoint-fil och ritar in symboler och texter ovanpå
                            kartan. Sedan sparar jag PowerPoint-bilden som en jpg-fil och lägger in den i min
                            websida. Jag föredrar det sättet framför att rita direkt i den ursprungliga jpg-filen,
                            på det här sättet kan jag flytta symboler och texter utan att göra om allt från
                            början.
                         
                            Jag lägger också in en länkkarta i websidan, så att jag kan visa en text när man
                            håller cursorn över en symbol och länka till en annan websida med mer fyllig information
                            när man klickar på symbolen. I gamla Dreamweaver var detta väldigt bekvämt, man
                            lade in sina hotspots direkt i en WYSIWYG-bild av sidan, men i Visual Web Developer
                            är det inte lika lätt. I ASP NET finns en tagg som heter asp:ImageMap; man anger
                            vilken bild den skall överlagras på och sedan fyller man på med en undertagg för
                            varje hotspot, t ex asp:CircleHotSpot, där man får ange koordinater, radie, länkadress
                            och Alt-text. 
                            När man skall ta ut koordinaterna för varje hotspot tar man upp jpg-bilden i en
                            editor som visar var cursorn är i pixels; jag använder PAINT.NET, som man kan ladda
                            ned gratis. Har man två skärmar blir det hyggligt bekvämt.
                         
                            Som det nu blev är jag skapligt nöjd med resultatet; titta gärna på t ex sidan med
                            glömda platser på
                            Rösajten. | 
                
                    | 2010-11-16 | Nu är "Nya Kamphavet" uppladdat till servern och provkört ett tag. 
                            Ett par ändringar har jag fått göra: dels kom jag på att jag inte kunde byta namn
                            på startsidan; många kanske sitter med den gamla länken "www.kamphavet.se/index.html"
                            - som inte skulle fungera om jag bytte namn på startsidan till "Default.aspx." 
                            Den ändringen medförde ett antal konsekvensändringar i menyerna och länkarna, men
                            inget stort. 
                            Dessutom visar det sig att vissa andra webläsare inte tycker om QuickTime, plugin:en
                            som spelar upp näktergalskvittret på startsidan. Internet Exporer och Opera kör
                            den (fast under protest från Web Developer), Firefox vanställer den, och Google
                            Chrome vägrar tvärt. Kan inte hjälpas; det är ju inte det viktigaste innehållet
                            på Kamphavet. 
                            Nu skall jag låta det rulla ett tag och se om jag snubblar över några fler konstigheter.
                            Vad värre är, så ser jag nu att Rösajten, som jag mödosamt skrev om förra hösten,
                            har "förbättringspotential". Idiotiskt att låta menyerna försvinna ovanför överkanten
                            när man skrollar ned i ett långt dokument - vi får se när jag får tid och lust att
                            göra någonting åt detta. | 
                
                    | 2010-11-15 | Efter mycket arbete - som dock låg på is hela sommaren - har jag nu skrivit om Kamphavet
                        till ASP.NET. 
                            Den viktigaste vinsten med det är att när sidorna laddas tar de med sig all gemensam
                            information från en "Master Page", där man kan lägga vinjetten, menyerna och allt
                            som skall se likadant ut på alla sidor. I en html-applikation med frames MÅSTE man
                            alltid gå in via frame-sidan för att se det gemensamma innehållet - hittar någon
                            en intressant sida via en sökmotor måste de gissa frame-sidans namn om de vill se
                            något mer av webplatsen, för menyerna och länkarna i frame-sidan kommer inte med! 
                            Dessutom tillhandahåller ASP.NET en massa bra funktioner för databaskoppling och
                            annat som antagligen är oändligt bökigt att lösa i ren html. 
                            Störst bekymmer har hanteringen av släktdatabaserna varit. De består ju av tusentals
                            sinsemellan hoplänkade html-sidor som genereras automatiskt av vårt släktforskningsprogram
                            "Min Släkt" och det är naturligtvis helt omöjligt att skriva om dem en och en till
                            ASP.NET; dels för att det skulle vara orimligt mycket arbete, dels för att det sedan
                            inte skulle gå att uppdatera filerna automatiskt. 
                            Länge funderade jag på att skapa en GEDCOM-parser som konverterade GEDCOM-exportfilen
                            från MinSläkt till en Access-databas och sedan skriva ASP.NET-sidor för att visa
                            informationen, men GEDCOM är så pass snårigt att jag lade den idén på hyllan och
                            i stället valde att visa html-filerna som de är i en iframe i en ASP.NET-sida. Därmed
                            får jag fördelarna med ASP.NET för navigering och hantering av gemensam information
                            samtidigt som jag slipper jättejobbet med GEDCOM-parsern. Det verkar nu att fungera
                            och ser skapligt snyggt ut. 
                            Familjens fotoalbum (som ligger i en lösenordsskyddad katalog) var en annan utmaning.
                            Jag ville ha en rullningsbar lista med miniatyrer till vänster och kunna klicka
                            på dem för att visa bildsidan till höger, och dessutom kunna bläddra mellan sidorna
                            med länkar som ligger i bildsidan. Det fungerar inte helt som jag ville, bland annat
                            laddas miniatyrlistan om varje gång man byter sida, så att man får rulla ned från
                            start varje gång. Ett annat problem är att funktionen som öppnar bildvisningssidan
                            gör det på huvudskärmen, inte sidoskärmen där jag har webläsaren - men det spelar
                            ju inte så stor roll om man bara har en skärm. Om någon är intresserad av min lösning
                            så hör av er så kan jag maila över koden.
                         
                            Det vore ett mirakel om jag fått alla länkar och annat rätt på en gång och dessutom
                            finns ett par skönhetsfläckar som jag skall jobba vidare med, men nu får det duga
                            för sjösättning. | 
                
                    | 2010-02-13 | I dag fick jag till sist ordning på bildhanteringen i WordPress och kunde sjösätta
                        den nya bloggen. Det har inte varit lätt, för att använda förnamnet. 
                            Den gamla bloggen var en enda lång html-sida, med länkar till andra html-sidor som
                            innehöll bilderna. Varje gång vi lade till ett inlägg måste vi göra en en miniatyrbild
                            med länk till bildsidan, skapa en ny bildsida, ändra innehållsförteckningen på bloggen,
                            köra website-generatorn för att sökmotorerna skulle hitta den nya sidan, ändra datum
                            för senaste uppdatering och kanske skriva ett inlägg på Nyhetssidan. Ganska jobbigt
                            med andra ord. Allt det där går ju automatiskt i en riktig blogg och dessutom kan
                            besökarna kommentera det de läser. 
                            Inte minst det sista tyckte vi var en stor brist på den gamla bloggen och började
                            i början av januari fundera på att byta till en riktig blogg. Det finns gott om
                            gratis programvara att hämta på nätet, problemet var snarare att välja vilken vi
                            skulle satsa på. Först försökte jag med WordPress, som kanske är det mest spridda
                            och populära bloggsystemet. Det är skrivet i php, ett annat skriptspråk än det jag
                            använder till våra hemsidor (ASP.NET). Om php kan jag fortfarande ingenting och
                            har inte heller lust att lägga ned månader på att lära mig ett språk till. WordPress
                            berömmer sig av att vara lätt att modifiera (vilket system gör inte det?), men det
                            är ett påstående man bör ta med en matsked salt. 
                            WordPress-sidornas utseende styrs av ett tema, som består av ett tjugotal php-filer
                            och en handfull bildfiler. Vad de olika filerna gör kan man nödtorftigt räkna ut
                            av filnamnet, men där slutar min förståelse. Det finns massor av teman att ladda
                            ned från nätet, men man vill ju ha en egen stil på bloggen, så jag försökte länge
                            att få det enklaste standardtemat att bara visa en av våra bilder i stället för
                            den tråkiga enfärgade vinjett det har från början. Det finns en redigeringsfunktion
                            för teman i WordPress, men hur jag bar mig åt gick det inte att byta namn på bakgrundsfilen;
                            jag fick döpa om min bild till samma namn som standardbakgrunden och ladda upp bilden
                            separat. 
                            Nästa problem var språket. Alla texter och meddelanden i WordPress är på engelska.
                            Det finns en bekväm funktion där man kan skriva in översättningar för varje text
                            som förekommer i WordPress; färdiga översättningsfiler finns att hämta på nätet
                            - men: standardtemats texter finns inte med i den svenska översättningsfilen, så
                            resultaten blev en sällsam röra av svenska och engelska texter. 
                            I det läget tröttnade jag på WordPress och försökte med att annat system, Joomla!
                            Där var det lättare att få till det och jag trodde jag var i mål. Utan att traggla
                            mig igenom den ganska oordnade dokumentationen flyttade jag entusiastiskt in alla
                            de gamla blogginläggen i Joomla - det tog en vecka. Så skulle jag skriva en förklaring
                            om hur man kommenterade inläggen och upptäckte först då att Joomla inte har någon
                            kommentarfunktion! Ridå! 
                            Nu var jag riktigt trött på allt vad "färdiga" bloggsystem heter och kände mig för
                            med en alldeles egen lösning i "gamla trygga" ASP.NET. Det gick ganska fort att
                            skapa en Access-databas och ASP.NET-sidor som visade inlägg och bilder på ett sätt
                            som var ganska likt den gamla Kamphavsbloggen, fast mycket lättare att underhålla.
                            Nu återstod bara att skapa en kommentarfunktion. Jag ville ju inte att någon skulle
                            kunna ändra våra inlägg, utan bara skriva in sina kommentarer och det fordrade någon
                            sorts identifiering av användarna, så att mitt system visste om det var vi själva
                            eller någon annan som satt vid datorn. Där körde jag fast. ASP.NET har funktioner
                            för inloggning och användarhantering, men de använder sig av Microsofts egen databashanterare
                            och den understöds inte av vårt webhotell! Där kroknade jag ... att ge mig på användarhantering,
                            kryptering av lösenord och tusen andra saker som behövs var bara allt för mycket!
                            Tillbaka till WordPress med svansen mellan benen. 
                            Jag måste först få ordning på den förfärliga svengelskan i WordPress. Det visade
                            sig inte gå att lägga till nya rader i översättningsfilen - programmet heter Poedit,
                            förresten. För övrigt upptäckte jag att temat i alla fall inte bryr sig om översättningsfilen,
                            så då var det bara att ändra texterna i alla temafilerna för hand - puh. 
                            Kommen så långt började jag skriva in de sista fyra inläggen från Kamphavsbloggen
                            i WordPress. Bilderna var på tok för stora, jag hittade ingen funktion i WordPress
                            för att få dem automatiskt reducerade, och gjorde om dem till 640x480 pixlar. Sedan
                            såg det hyggligt ut på min dator, så jag ändrade alla de 198 bilderna till 640 pixlars
                            bredd. Det tog en stund. 
                            När jag stolt bad Ann Britt att titta på den nya bloggen var alla bilderna hoptryckta
                            i sidled! Vad??? Hon använder ju samma webläsare som jag!!! Så kollade jag alla
                            andra webläsare jag har och de visade samma fel allihop. Varför såg det rätt ut
                            i min? Jo, till sist kom jag på det: jag hade kört min Internet Explorer 8 i "kompatibilitetsläge"
                            - dvs den gör på konstgjord väg samma fel som föregångaren Internet Explorer 7!
                            När jag slog av kompatibilitetsläget såg det lika illa ut hos mig. 
                            Nu måste jag söka hjälp på WordPress svenska forum. Jag hade varit där förut och
                            upplevt att det var som att ropa i öknen - oftast var jag ensam inloggad. Som i
                            alla forum finns det tusentals frågor och svar, men hur man letar hittar man inget
                            som passar på mitt problem. Till sist svarade i alla fall någon, och efter en stunds
                            diskuterande kom han med det avgörande tipset: bilderna måste skalas ned manuellt!
                            Dvs. antagligen behöver man inte det, men jag har inte kommit på hur man skall göra
                            i stället. Nu löste det mitt problem, så det andra kan vänta. 
                            Därmed var det klart för sjösättning, som skedde när jag ändrade länkarna från Kamphavet
                            och Rösajten till den nya bloggen. Nu är det bara resten kvar. | 
                
                    | 2009-12-13 | Efter en del trasslande har jag nu fått namnvisningen att fungera i bildarkivet
                        på Rösajten. 
                            Den bygger på att de s k alt-texterna visas automatiskt när man för pekaren över
                            en komponent som har en alt-text. Egentligen är den till för att presentera namnet
                            på en bild om den av någon anledning inte kan visas normalt. Man kan också lägga
                            in osynliga ytor med länkar ovanpå en bild, s k hotspots, och det är det jag utnyttjar
                            för namnvisningen. Jag definierar hotspots för varje ansikte i en bild och sätter
                            dess alt-text till det namn jag vill visa. 
                            Det var ingen konst när jag jobbade i html, då skriver man bara in koordinater och
                            storlek för sina hotspots i en image map på varje sida. I den lösning jag valde
                            för den nya Rösajten är det bara en enda ASP.NET-sida, och innehållet hämtas från
                            en databas. Koordinater och namn ligger nu också i databasen, hämtas till sidan
                            när den skall visas och skrivs in i en image map innan servern skickar ned den till
                            klienten som html-kod. 
                            Det finns tyvärr inget riktigt praktiskt sätt att ta ut koordinaterna till hotspots
                            i Visual Web Developer. I DreamWeaver kunde man rita in dem i bilden och koordinaterna
                            sparades automatiskt, men i VWD måste man skriva in dem som siffror. Jag gör så
                            att jag öppnar bilden i Paint, där pekarens koordinater hela tiden visas i nederkanten.
                            Om jag har databasen öppen samtidigt kan jag skriva in koordinaterna direkt - men
                            det är tur att jag kostat på mig två skärmar till datorn så jag inte behöver växla
                            mellan databasen och Paint på samma skärm. | 
                
                    | 2009-11-22 | Efter fjorton dagars arbete är "Safari-problemet" löst. Besvären med Safari (och
                        Googles webläsare Chrome) beror på att Microsofts ASP.NET- program inte känner igen
                        att Safari och Chrome är moderna webläsare. Försöker de bara dj...as med konkurrenterna?
                        På ASP-sidan fick jag ett förslag till lösning som skulle tvinga ASP.NET att hantera
                        Safari och Chrome rätt, men av någon anledning fungerade inte det. 
                            I stället fick jag acceptera att jag inte kan använda den inbyggda menyn i ASP.NET
                            utan måste skriva en egen, vilket ju bär emot en del när det finns en snygg many
                            inbyggd. De flesta andra menyer bygger på Javascript, men nu är det ju så att användaren
                            kan stänga av javascript i sin webläsare och därmed stänga av en javascriptmeny.
                            (Javascript kan ju användas för att skriva skadliga program).
                         
                            Jag valde i stället att göra en meny som bara utnyttjar html-listor och stilmallar.
                            I en stilmall kan man styra vilka delar av menyn som skall visas och ändra utseende
                            på menyns olika delar när man för pekaren över dem.
                         
                            Jag startade förstås en tråd på ASP-sidans forum när jag började grubbla över stilmallsbaserade
                            menyer - utan alla nyttiga tips jag fick där hade jag nog grubblat mig tokig över
                            den ganska svårbegripliga koden i stilmallen. Om någon är intresserad av min lösning
                            så skicka ett mail!
                         
                            Jag bestämde mig också för att gå över till Internet Explorer 8 som huvudwebläsare
                            för Rösajten, för om det fungerar i IE8 så fungerar det för det mesta i alla andra
                            moderna webläsare. Sedan var det bara ett IE7-problem, för den gör inte som de andra.
                            Nu kan man lägga till en extra stilmall som bara läses in om sidan hämtas till IE7,
                            så slutresultatet blev att sajten nu fungerar OK i IE8, IE7, Safari, Chrome, Firefox
                            och Opera - över 90 % av alla användare kör någon av dessa.
                         
                            Den enda hyggligt vanliga läsare som återstår är IE6, den 8 år gamla läsaren som
                            släpptes tillsammans med Windows XP. IE6 har inte stöd för "hover" annat än för
                            vanliga länkar, och därför går det inte att använda stilmallsbaserade menyer i IE6.
                            Det kan vara möjligt att lägga till javascript till min meny för att den skall fungera
                            i IE6, men det jobbet (bl a att lära mig javascript) får vänta - det finns faktiskt
                            inget skäl att inte uppgradera IE6, så jag lade in en länk till Microsoft Download
                            i "About"- sidan.
                         | 
                
                    | 2009-11-08 | De dynamiska menyerna i den just sjösatta Rösajten fungerade inte i Internet Explorer
                        8 eller Safari och jag hade ingen aning om varför. Jag lade in en fråga i Asp-sidans
                        forum och efter några timmar hade jag fått lösningen på IE8-problemet. 
                            Det visade sig att Microsofts serverprogram skapar felaktig kod när det skickar
                            ned html-koden för en asp-meny. IE7 märker inte detta, men i IE8 har man rättat
                            felaktigheten utan att rätta serverprogrammet! 
                            Lösningen var ett obetydligt tillägg i .css-filen och menyn som säger till IE8 att
                            lägga menyerna ovanpå allting annat.Problemet med Safari visade sig mer invecklat, men jag jobbar med det.
 | 
                
                    | 2009-11-05 | Ett av de stora problemen med Kamphavssajten är de genealogiska sidorna. Vi använder
                        ett program som heter MinSläkt för släktforskningen; det är väldigt bra och lättarbetat,
                        men när man vill publicera sina resultat på Internet så skapar det minst två html-sidor
                        per person man har matat in. Totalt har vi hittills publicerat 8918 filer som MinSläkt
                        genererat. 
                            Förutom att detta tar en del plats på servern så kan man naturligtvis inte skriva
                            om nästan 9000 filer för hand till asp.net så att man kan använda en Master Page,
                            utan tvingas leva kvar i frames med de nackdelar det har. 
                            Dessutom har vi inte hittat något sätt att ta reda på vilka filer som behöver uppdateras
                            när man ändrat något i MinSläkt. (De genererade html- filerna får namn som är långa
                            siffersträngar där det inte går att se vilken person de berör utan att öppna dem).
                            När man gjort den minsta ändring i sin släktforskning måste man därför ladda upp
                            alla filerna igen för att vara säker på att allt blir rätt. 
                            Nu är det ju inte särskilt smart att skapa flera sidor för varje post i något som
                            egentligen bara är en databas. Anledningen till att jag började arbeta i asp.net
                            var just att man då smidigt kan hämta innehållet i en sida från en databas (så hanteras
                            platser, personer, blommor och alla möjliga saker på Rösajten). Man behöver bara
                            en enda asp.net-sida för att visa alla poster man har i sin databas; 8997 filer
                            kan slopas - förutom asp.net-sidan behövs en sida med kod och förstås själva databasen.
                         
                            När man gjort en ändring behöver man bara ladda upp databasfilen - vilken förenkling!
                            Jag har börjat peta i detta för att på sikt försöka ersätta de tusentals html-filerna
                            med en smidig asp.net-applikation. 
                            Nu är det tyvärr så, att databasen i MinSläkt inte går att komma åt utifrån; inte
                            heller begriper asp.net att MinSläkt-filen är en databas. Innehållet i MinSläkt-filen
                            måste alltså konverteras till en databas asp.net kan använda, men sedan kan man
                            börja skriva asp.net-sidor för att visa sina personer och familjer.
                         
                            MinSläkt kan inte bara exportera innehållet som html-sidor, programmet kan också
                            spara hela innehållet i en textfil på ett format som kallas GEDCOM. GEDCOM är ett
                            format som tagits fram av mormonkyrkan i USA - som bekant gör deras religion det
                            ytterst angeläget att forska fram sina förfäder. Tack vare mormonerna är det mesta
                            av de svenska kyrkoarkiven mikrofilmade, till stor glädje också för alla svenska
                            släktforskare. GEDCOM-filer går att begripa, om man bara har nyckeln till de taggar
                            som talar om vad varje rad handlar om, men det är trivialt - GEDCOM-standarden är
                            bara att ladda ned från internet. 
                            Vad som inte är helt trivialt är att GEDCOM bygger på en datamodell som inte direkt
                            kan översättas till en relationsdatabasmodell av det slag alla moderna databaser
                            bygger på. För att överföra MinSläkt-datat till en relationsdatabas måste jag alltså
                            läsa GEDCOM-filen rad för rad, lista ut vilken tabell informationen skall läggas
                            i och (vilket är knivigast) sätta upp relationerna mellan de olika posterna, så
                            att barnen får rätt föräldrar och rätt personer är gifta med varandra t ex.
                         
                            Vad jag har börjat med är därför att försöka bygga ett program inuti en Access-databas
                            som kan läsa GEDCOM-filen och fylla på datat i de olika tabellerna. Tyvärr måste
                            jag skriva programmet i Access Basic som är det enda Access förstår - snårigt och
                            ovant för mig. Jag hade hellre arbetat med C# som i asp.net, och lärt mig det ordentligt
                            i stället för två programspråk halvdant. Ett alternativ vore att byta databashanterare
                            till SQL Server, som är gratis, modernare och kraftfullare än Access - men det är
                            förstås ett jättejobb att lära sig en helt ny databashanterare. Rår jag inte på
                            problemet med Access Basic kanske jag får tänka om. 
                            Wish me luck! | 
                
                    | 2009-11-01 | Den nya Rösajten sjösattes i dag. Det finns flera skäl till att jag ville dela på
                        vår privata sajt Kamphavet och Rösajten. En är förstås att man skall komma direkt
                        dit utan att behöva bläddra i Kamphavet. En annan är att den gamla lösningen med
                        html och asp.net blandat gör det omöjligt att använda Master Pages till sajten.
                        En Master Page är ett modernare sätt att ge alla sidor en gemensam layout och slippa
                        skriva gemensamt innehåll på alla sidor. 
                            Förr skötte man (och vi gör fortfarande det på Kamphavet och Setons the) det med
                            framesets; den stora skillnaden är att ett frameset hämtar innehållet i de olika
                            ramarna från andra filer, medan alla sidor i den modernare lösningen hämtar sin
                            MasterPage och fyller den med innehåll. En nyttig konsekvens av detta är att om
                            någon hämtar en sida direkt, utan att gå via hemsidan, får man med menyer och allt
                            och kan surfa vidare inom sajten. Förr fick man aldrig se menyer och annat som låg
                            i andra frames om man hittade en av våra sidor t ex via Google. 
                            Så långt ser det ju bra ut! |