Digg lanserar API och Flash-verktyg

Digg - världens främsta "bokmärkningssajt" i genren teknologi – meddelar på sin blogg att de nu lanserar Digg API och Flash application toolkit. Med hjälp av dessa verktyg kan alltså vem som helst utveckla egna applikationer baserat på data från digg som sträcker sig tillbaks till året 2004.

Man annonserar även en tävling där den mest kreativa lösningen baserat på Digg API kommer att belönas med fina priser.

Stamen Design har hjälpt till med utvecklingen. Tidigare har de även levererat experimentella flash-interface till Digg-sajten som man kan beskåda i labbet.

(Via Beta Alfa)

By Jesper Lind

SWFUpload - laddar upp flera filer samtidigt

http://www.codeodyssey.se/upload/resource/blog/SWFUpload(1).png

Vi söker efter ett bra sätt att kunna ladda upp flera filer samtidigt till en server. Innan har jag bara hört talas om att det går att göra med komponenter i Java, men nu har jag fått ett nytt tips som verkar väldigt lovande.

Per-Mattias på Paltkoma tipsar om att de själva använder SWFUpload till filuppladdning. Har kollat in demot och det verkar riktigt trevligt.

Det handlar alltså om flash och javascript-baserad uppladdning som visar progress-bar för varje fil man valt. Ifall inte flash finns tillgängligt hos användaren visas istället en klassisk uppladdare i html. SWFUpload är utvecklat av Mammon.

By Jesper Lind

Få bort gamla sidor från Google

Äntligen. Nu kan man på ett lättare sätt få bort sökresultat från Google. De nya verktygen finns i Google Webmaster Central och hittas under fliken "Diagnostik/Borttagning av webbadresser".

För att få tillgång till funktionen måste man ha ett verifierat konto som bevisar att man är ägare av sajten. Hans på SEO.se förklarar mer.

By Jesper Lind

Skapa xml från filnamn i en mapp

Vi har tidigare visat ett koncept på hur man kan göra ett bildspel i flash med bildnamn som laddas från en xml-fil. Det är ett bra sätt så att man ska slippa att gå in i flash-filen och ändra varje gång man vill byta ut bilderna.

Vi använder den rätt ofta i våra egna projekt och hittills har vi sparat meta-data för bilderna i en databas. Det har sina fördelar ifall man vill spara bildtexter eller liknande.

Men det kan bli rätt omständigt att först göra en editor för att hantera bilduppladdingen. Därför skrev jag ett litet kodstycke i C# som kollar efter bilder i en angiven mapp, och skapar en xml-fil baserat på filnamnen.

I exemplet används två variabler som är sökvägar till xml- och bildmappar. Dessa läses i vårat fall in från Web.Config

//Här finns våra xml-filer
public static string strXmlRootPath = ConfigurationManager.AppSettings["XmlRootPath"];

//Här lagrar vi bilderna
public static string strMediaRootPath = ConfigurationManager.AppSettings["MediaRootPath"];

Funktionerna som skapar xml-filen

private void CreateSlideshow()
{
string strXMLPath = strXmlRootPath + "slideshow.xml";

if(File.Exists(strXMLPath))
{
DateTime dtLastWriteTime = Convert.ToDateTime( ""+File.GetLastWriteTime(strXMLPath) );
//Skapar bara en ny fil en gång varje timme
if( DateTime.Compare(DateTime.Now,dtLastWriteTime.AddMinutes(60))==1 )
{
CreateSlideshowXml();
}
}
else
{
CreateSlideshowXml();
}
}

public void CreateSlideshowXml()
{
try
{
string strXMLPath = strXmlRootPath + "slideshow.xml";
FileStream objFileStream = new FileStream(strXMLPath, FileMode.Create);
XmlTextWriter objXmlWriter = new XmlTextWriter(objFileStream, System.Text.Encoding.GetEncoding("utf-8"));//iso-8859-1
objXmlWriter.Formatting = Formatting.Indented;
objXmlWriter.WriteStartDocument();
objXmlWriter.WriteStartElement("images");

//Skapa array av alla filer i mappen för slideshow-bilder
String[] strFiles = Directory.GetFiles(strMediaRootPath + "slides/", "*");
string strFileName = string.Empty;
string strFullPath = string.Empty;

foreach (string strFile in strFiles)
{
strFileName = Path.GetFileName(strFile);
strFullPath = Path.GetFullPath(strFile);

objXmlWriter.WriteStartElement("pic");
//Url till bild
objXmlWriter.WriteStartElement("image");
objXmlWriter.WriteString(strMediaRootUrl + "slides/" + strFileName);
objXmlWriter.WriteEndElement();//Slut image
//Länk
objXmlWriter.WriteStartElement("link");
//Denna gång lämnar vi -link- tomt. Här kan man spara en url om bilderna ska vara klickbara
objXmlWriter.WriteEndElement();//Slut link

objXmlWriter.WriteEndElement();//Slut pic
}


objXmlWriter.WriteEndElement();//Slut images
objXmlWriter.WriteEndDocument();
objXmlWriter.Close();
}
catch (Exception objException)
{
Trace.Warn("XML-fil för slideshow kunde ej sparas! Fel: ",objException.Message);
}
}

Och slutligen spottas xml-filen ut som följer den här strukturen:

<?xml version="1.0" encoding="utf-8"?>
<images>
<pic>
<image>http://localhost:1643/test-site/media/slides/IMG_4954.jpg</image>
<link />
</pic>
<pic>
<image>http://localhost:1643/test-site/media/slides/IMG_4955.jpg</image>
<link />
</pic>
<pic>
<image>http://localhost:1643/test-site/media/slides/IMG_4956.jpg</image>
<link />
</pic>
<pic>
<image>http://localhost:1643/test-site/media/slides/IMG_4960.jpg</image>
<link />
</pic>
<pic>
<image>http://localhost:1643/test-site/media/slides/IMG_4961.jpg</image>
<link />
</pic>
</images>

 

By Jesper Lind

Vi finns nu på House of Win-Win

http://www.codeodyssey.se/upload/resource/blog/house-of-winwin.png

Vi jobbar nu mera från kontorskollektivet House of Win-Win – en lokal på Tredje Långgatan med utrymme för fria enteprenörer och kreatörer.

Efter den inledande tiden känner vi verkligen att vi har hittat ett riktigt intressant ställe som passar oss perfekt.

Några andra som finns på plats är livsstilsmagasinet Camino, reklambyrån Sällström & Östgaard, Magnus.Photography, Cat's Kitchen, Bwana Club samt många fler sköna konstellationer av människor. Tack alla, för det fina välkomnandet.

På bilden ovan ser ni en liten del av den fina väggmålningen som Andreas och Arvid gjorde nyligen under deras praktik. Missa inte den i entrén om ni kommer på besök.

Vår nya adress är alltså.

Code Odyssey
Tredje Långgatan 13B
413 03 Göteborg

By Jesper Lind

Vi behöver säkrare kreditkortshantering

Över 45 miljoner kreditskortsnummer har blivit stulna från klädkedjan TJX och det är förmodligen den största kreditkortsläckan någonsin, skriver Lars Olofsson.

Säkerhetstjänsten Stolen ID Search som vi har rapporterat om tidigare, borde alltså fått ett rejält uppsving i sina affärer. Deras affärsidé går ju ut på att söka upp kreditkortsuppgifter som hamnat i fel händer och hjälpa individer som drabbats.

Det är väl endå uppenbart att det nuvarande kreditkortssystemet inte fungerar särskilt bra. Säkerheten måste ökas för att e-handelkunder ska kunna handla säkert.

By Jesper Lind

Besökarhistorik med CSS-hack

Säkerhetsexperter upptäckte för ett tag sen att CSS-historiken kunde användas till att ta reda på vilka webbplatser en besökare har vart på tidigare. Normalt används detta endast för att webbläsarna ska kunna markera besökta länkar i en annan färg eller stil.

Ett hot mot integritet kan man tycka och definitivt ett säkerhetsproblem. En nätfiskare kan med denna metod enkelt får reda på om besökaren nyss har loggat in på Gmail, Hotmail, Yahoo eller vilka banktjänster denna använder. Och på sådant sätt rikta sina nätfiskningsaktioner mot just de tjänster som användaren nyttjar.

Jeremiah Grossman visade upp exempelkod i postningen "i know where you've been" redan för ett halvår sedan och RSnake har ett "CSS History Hack"-demo (för Firefox) som visar hur det fungerar i praktiken.

Jag har själv bara väntat på att man skulle få se exempel på "kreativ markadsföring" eller småfunktioner som förhöjer besökarens upplevelse. Att få tillgång till sån här extra information om besökaren borde ju locka många sajtutvecklare.

Bloggen int2e.com visar nu ett exempel på ett användningsområde. De beskriver ett skript för en flexibel "Digg-knapp" – som bara visas för besökare som tidigare vart på Digg.com.

By Jesper Lind