64bits, Open source

64bits phpBB2 modifieringar

Nu när vi nu äntligen har uppgraderat vårt forum från phpBB2 till phpBB3 tänkte jag att det är dags att släppa vår version av forumet, inklusive alla konstiga moddar som vi har lagt in. phpBB2-forumet levde hos oss från 2002 till 2009, så det har blivit en del modifieringar under de åren.

Först och främst vill jag klargöra att källkoden släpps som GPLv2 eller senare, även om det inte står särskilt tydligt överallt. Detta eftersom den övriga phpBB2-koden har det som licens och för att undvika strul. Innan vi uppgraderade till phpBB3 körde vi phpBB2 v0.20. Den senaste versionen av phpBB2 är i skrivande stund 0.23, så källkoden vi släpper är alltså inte senaste versionen som du hittar på www.phpBB.com.

I de filer som följer med phpBB2 och vi har redigerat har vi följt ett system för att hålla ordning på alla förändringar vi har gjort. Längst upp i filen, precis under licenstexten, finns en lista över de modifieringar som finns längre ner. Syntaxen är som följer: nickname_YYMMDD_löpnummer: förklaring. Nyckelordet ”nickname_YYMMDD_löpnummer” finns sedan längre ner i filen. Är det en ändring eller ett tillägg som bara berör en rad brukar den raden sluta på //nyckelord, men om det berör mer än en rad brukar de raderna omslutas av /* nyckelord */ och /* /nyckelord */. Ibland står det en referens till personen som har frågat efter modifieringen, antingen vid namn eller nick eller som en länk till en forumtråd.

Jag vill även ursäkta för kvalitén på mycket av koden, då vi oftast inte har följt phpBB:s kodstandard eller -flöden över huvud taget. Vi har tagit många genvägar, t ex är det inte alltid vi använder oss av språkfilerna utan har helt sonika skrivit felmeddelanden och dylikt på svenska direkt i källkoden. Detta gäller för övrigt kommentarer också, alla kommentarer är på svenska. Tyvärr. Jag vet att detta sticker i ögonen på många idag, inklusive mig.

Vissa av modifieringarna behöver lagra data, t ex titelmodden. För att göra det möjligt för oss att uppgradera till senare versioner av phpBB, alternativt konvertera till andra forummjukvaror har vi skapat egna tabeller för detta, istället för att modifiera de existerande. SQL-satserna för dessa tabeller följer.

CREATE TABLE `phpbb_rpttopic` (
`topic_id` mediumint(8) unsigned NOT NULL default '0',
`timestamp` int(11) NOT NULL default '0',
`user_id` mediumint(8) NOT NULL default '0',
`comment` text,
PRIMARY KEY (`topic_id`)
);

CREATE TABLE `phpbb_titles` (
`title_id` mediumint(8) unsigned NOT NULL auto_increment,
`title_name` varchar(50) NOT NULL default '',
`title_image` varchar(255) default NULL,
PRIMARY KEY (`title_id`)
);

CREATE TABLE `phpbb_users_xtra` (
`user_id` mediumint(8) NOT NULL default '0',
`user_title` mediumint(8) unsigned default NULL,
`user_sex` enum('M','F') default NULL,
`can_report` enum('Y','N') NOT NULL default 'Y',
`img2url` enum('Y','N') NOT NULL default 'N',
PRIMARY KEY (`user_id`)
);

CREATE TABLE `phpbb_newstips` (
`tip_id` mediumint(8) unsigned NOT NULL auto_increment,
`user_id` mediumint(8) default NULL,
`anon_name` varchar(25) default NULL,
`anon_email` varchar(255) default NULL,
`tip_text` text NOT NULL,
`timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
PRIMARY KEY (`tip_id`)
);

Ladda ner källkoden här: phpBB-2.0.20-64bits.tar.gz

30 mars 2009 av Fredrik Ågren ,   0 kommentarer