Category: MyBB

VPS

Afgelopen week is er heel wat gebeurt ... Al een tijdje was de boot-partitie van mijn Raspberry Pi read-only, wat eigenlijk geen problemen gaf, tot de nieuwe versie van de firmware een extra pakket nodig had, en zo de updates van andere pakketten tegenhield. Daarom heb ik de partitie geremount met rw. En dit leek te werken ... tot de root partitie tijdens het installeren van de updates ro werd.

Uiteindelijk bleek de SD kaart bad sector(en) te hebben. Nieuwe SD kaart met verse installatie zou me 25 euro excl. btw kosten. Aangezien ik al een tijdje af wou van mijn veel te ruime hosting abonnement, leek dit wel een heel goede gelegenheid om een VPS te gaan gebruiken op het cloud systeem van PCextreme. Ik gebruik hierbij een Agile instantie, die eigenlijk gewoon een vrij traditionele VPS is, zonder replication en dergelijke.

Uiteindelijk heb ik de VPS geïnstalleerd en de backups teruggeplaatst, intussen werd ook het certificaat van de blog vernieuwd. Intussen is het blog volledig gehost op de VPS, wat de website een pak sneller maakte. Ik dacht immers dat het vooral de rpi was die het zo traag maakte, maar na de overstap op de VPS zag ik dat de blog gewoon zo lang nodig had om te renderen. Intussen heb ik ook de community fora van de Game Section gemigreerd naar de VPS, meet https, uiteraard.

Het is dus de bedoeling alles over te zetten voor het einde van het jaar, wanneer mijn abonnement ten einde loopt. Ik heb voor dit alles trouwens geen gebruik gemaakt van de Apache en MySQL, maar van nginx en MariaDB. nginx om de simpele reden dat ik hier zeer tevreden over was bij mijn rpi, en ik met name de config sneller is. Over snelheid zal ik me niet uitspreken. MariaDB tov MySQL lijkt me logisch, aangezien MariaDB de GPL-only fork is uit de community, en actieve ontwikkeling kent, terwijl MySQL relatief dood lijkt. Blijkbaar zijn ook de meeste grote tech-bedrijven die MySQL gebruikten overgestapt naar MariaDB, dus ...

Daarnaast heb ik ook een aantal wijzigingen doorgevoerd aan dit blog, en zo is dit de eerste post die geformatteerd werd met markdown, ipv bbcode. De oude posts blijven echter zonder problemen werken met bbcode, dankzij een kleine wijziging aan de Markdown-plugin.

Ik denk er ook sterk over na om de Urbanus-website niet meer als afzonderlijke entiteit te hebben, maar in pagina's op het blog te stoppen, die dan ook onder een nieuw domein zou komen. Dit zou handiger zijn dan het huidige systeem dat afhangt van MyBB, en dat ik natuurlijk zelf up-to-date moet houden. Daarnaast kan ik dan ook wel eens beginnen nadenken over het nut van het forum. Mogelijk zou, zeker vanuit veiligheidsperspectief, het forum verdwijnen, met wel een HTML-versie van het forum. De wiki van de Game Section zou wel eens een gecompileerde wiki kunnen worden. Dit blog wordt mogelijk dan toch Engelstalig.


Birthday list

Zo zag de birthday list van de Game Section forums er eerder vandaag uit:

Zoals je kan zien is de meerderheid van die lijst verbannen van het forum. Niet verwonderlijk als je weet dat bijna 30% van de gebruikers verbannen is. Afgaand op de vermindering dat ik kreeg in de cache door hen te schrappen maken zij de helft uit van de gebruikers die hun geboortedatum aan hebben gegeven. Ik zei het al, ik filter vanaf nu op verbannen gebruikers. Dat heb ik gedaan als volgt:
Open inc/class_datacache.php en zoek:

$query = $db->simple_select("users", "uid, username, usergroup, displaygroup, birthday, birthdayprivacy", "birthday LIKE '$bdaydate-%' OR birthday LIKE '$bdaydateyesterday-%' OR birthday LIKE '$bdaydatetomorrow-%'");

Vervang met:

/*
		 * Paretje was here ...
		 * Replaced the following query to make banned users are no longer on the birthday list.
		 * $query = $db->simple_select("users", "uid, username, usergroup, displaygroup, birthday, birthdayprivacy", "birthday LIKE '$bdaydate-%' OR birthday LIKE '$bdaydateyesterday-%' OR birthday LIKE '$bdaydatetomorrow-%'");
		 */
		$query = $db->simple_select("users", "uid, username, usergroup, displaygroup, birthday, birthdayprivacy", "usergroup!='7' AND (birthday LIKE '$bdaydate-%' OR birthday LIKE '$bdaydateyesterday-%' OR birthday LIKE '$bdaydatetomorrow-%')");

UTF-8

Om ook de andere tabellen van de site te kunnen converteren in MYBB, heb ik de volgende wijziging aangebracht aan MyBB:
Open admin/modules/tools/system_health.php and find

		if(substr($tablename, 0, strlen($old_table_prefix)) == $old_table_prefix)
		{
			$table = $db->show_create_table($tablename);
        	preg_match("#CHARSET=([a-zA-Z0-9_]+)\s?#i", $table, $matches);
			if(fetch_iconv_encoding($matches[1]) != 'utf-8')
			{
				$not_okey[$key] = $tablename;
				++$not_okey_count;
			}
			else
			{
				++$okay_count;
			}
			
			$mybb_tables[$key] = $tablename;		
		}

Vervang met:

		/*if(substr($tablename, 0, strlen($old_table_prefix)) == $old_table_prefix)
		{*/
			$table = $db->show_create_table($tablename);
        	preg_match("#CHARSET=([a-zA-Z0-9_]+)\s?#i", $table, $matches);
			if(fetch_iconv_encoding($matches[1]) != 'utf-8')
			{
				$not_okey[$key] = $tablename;
				++$not_okey_count;
			}
			else
			{
				++$okay_count;
			}
			
			$mybb_tables[$key] = $tablename;		
		/*}*/

IE en Dom

Heb vandaag het volgende uitgevonden omtrent het gebruik van het DOM model in Internet Explorer:
- IE ondersteunt geen dom bij tabellen
- Dit werkt bv. niet:
radnomgames = document.getElementById('randomgames');
De variabele mag niet dezelfde naam hebben als de ID, omdat die al gedefinieerd is.


MyBB 1.4

Zo'n 14 dagen verscheen MyBB 1.4, de langverwachte nieuwe versie van MyBB 1.4. De periode na zo'n release verloopt altijd nogal hectisch: plugins moet geüpgraded worden en mensen stoten op problemen in de nieuwe versie, ondanks de zorgvuldige test-procedure.

Bij mij is het de bedoeling dat de Usermap plugin morgen wordt bijgewerkt. Daarna ga ik een beetje tijd investeren in MyBBDesign. Deze draait namelijk nog op MyBB 1.2, en dat willen we veranderen. Verder zullen er ook nieuwe mogelijkheden worden toegevoegd én alles komt terug in een nieuw jasje.

Daarna zal ik mijn Reputatie Manager upgraden. Die moet in feite volledig herschreven worden. Verder zal de Game Sectie een experimentele MyBB 1.4 versie krijgen gebaseerd op Game Section 1.1, zonder AdminCP.

Wanneer Game Section 1.2 dan klaar is, dan zal ik Online - Urbanus volledig laten overstappen op mijn systeem gebruikmakend van MyBB 1.4. Dat wil zeggen dat alles met elkaar verboden zijn, en dat zal dus verder gaan dan enkel de skin.

Vandaag wilde ik nog eventjes een nieuw ideetje doorvoeren, maar ik deed het te vluchtig en het ging fout. De backup die ik ervoor maakte met MyBB leek niet te werken (ik heb het bord nog niet overgezet naar de MyBB 1.4 GOLD. Dat is omdat ik het al lange tijd niet meer gebruikt heb. Ik had nog wel een backup van half-juli, en ik heb blijkbaar niets meer gedaan meer naar het einde van de maand.

Dit voorvalletje heeft er wel voor gezorgd dat mij cronjob nog wat uitgebreid is, er zijn met name terug 2 lijnen toegevoegd die de goede gang van zaken van de backup van de database van mijn offline Online - Urbanus versie verzekert.

Ook ben ik beginnen te denken om misschien ook PM meldingen te tonen, want dat had ik er oorspronkelijk uitgesloopt voor de site. De container is in ieder geval onzichtbaar nu. Ook zal ik dan de plugin klaarstomen die alle aanpassingen aan het forum regelt (laden van menu, ...) en documentatie over die ene aanpassing aan de bestanden: het bepalen van de taal.


Quote Links

Gisteren avond en deze voormiddag heb ik een systeem gemaakt dat de quotes gemaakt met behulp van de Quote Link moddificatie converteert naar de nieuwe uitgebreide quotes van MyBB 1.4. MyBB 1.4 biedt die functionaliteit namelijk standaard aan, waardoor deze mod natuurlijk niet meer nodig is.

Daarom wilde ik dat alle quotes die voor MyBB 1.4 in combinatie van de Quote Link mod zijn geplaatst converteren naar dat nieuwe systeem. Naast het systeem om te linken naar het geciteerde bericht bevat het systeem van MyBB 1.4 echter ook een systeem die de datum van dat bericht toont.

Om die reden is het niet gewoon de pid verplaatsen in de code, maar ook de dateline plaatsen, die moet echter uit de database gehaald worden, aangezien dat niet werd gebruikt met de Quote Link mod. Daarom haal ik eerst alle datelines op, waarna ze ik bij het converteren laad naar aanleiding van de pid.

Ik had echter eerst een probleempje, maar uiteindelijk vond ik een uitweg aan de hand van de code voor het parsen van de nieuwe quotes in MyBB 1.4, namelijk dat ik de reguliere expressie moet afsluiten met #esi, in plaats van met #si. Anders wordt de functie die ik aanroep om dan alles te verwerken van de dateline niet aangeroepen.


Game Section 1.2 beta 3

Dit weekend zal ik na een hele tijd van inactiviteit, examens ..., terug een nieuwe beta van 1.2 beschikbaar stellen. De belangrijkste (en zowat enige) verandering is de overstap naar MyBB 1.4.

Maar deze versie is nog niet klaar, vooral aan het ACP moet nog gewerkt worden én ik moet de AJAX functionaliteiten herschrijven, deze blijken niet meer te werken. Ook het Game Section gedeelte bij het wijzigen, migreren en verwijderen van gebruikers moet nog worden aangepast in de plugin.

Verder zag ik zonet op het blog van MyBB dat ook profielen van url zijn veranderd - locaal werkt .htaccess niet, zou daar eens voor moeten kijken - en dat betekent dat ik ook de Who's online functie zal moeten herschrijven.

Er is dus nog wel wat werk. Na beta 3, moet ik nog het volgende doen:
- Tournaments afwerken (het grootste stuk ..., maar ik heb al veel gekrabbel daaromtrent)
- Reparatie van gamedata

Deze laatste is iets wat ik vandaag heb bedacht, en eigenlijk nog nergens in een lijst staat. Het gaat hier om het opruimen van eventuele lege gamedata mappen en het opruimen van gamedata-mappen van games die niet (meer) zijn toegevoegd.


Examens

Het is nu bijna een maand geleden dat er nog een post is geplaatst op dit blog. In die maand is er voor mij bijna maar één ding gebeurd: ik heb mijn examens gehad.

Mijn examens zijn volgens mij wel goed verlopen, al heb ik nog geen echte resultaten, al weet ik er al twee met zekerheid:
Boekhouden: 100% (een record voor mijn lerares)
Biologie: 87%

Toch heb ik ook andere dingen gedaan: zo heb ik een beetje gewerkt met OnTV, een applet voor GNOME waarmee je kan zien wat er momenteel bezig is op TV, alleen werkt dat niet voor één, zowat de enige post die ik zeer frequent bekijk.

En voor ontspanning heb ik me in die tijd bezig gehouden met simutrans, zodat ik niet zou beginnen aan programmeren, want dan zou ik niet meer kunnen stoppen. Toen ik er aan begon kon ik er nog niet goed weg mee, maar nu heb ik toch al wat meer ervaring, met een bedrag van bijna 200.000.000.

Gisteren heb ik dan heel wat werk ingehaald. Alle posts op het forum van de afgelopen twee weken zijn nu opgelost, of in behandeling. Verder heb ik ook zowel de Community Forums als het Online - Urbanus Forum voorzien van versie 1.2.13 van MyBB.


1ste pagina volledig XHTML

Om verder te werken aan de Game Sectie moet ik eerst nog een beetje ideeën uitwerken in schetsen op papier en daar heb ik nu even geen goesting in. Daarom heb ik eens werk gemaakt om Online - Urbanus 100% XHTML valid te maken. Dit is in ieder geval al gelukt voor de index-pagina. Het blog heeft ergens een foutje in de structuur waardoor er 37 error's optreden. Dat wordt gecontroleerd.

13/04/2008, 13:53:
Het is al serieus minder. Enkel nog een paar probleempjes met de sidebar.

13/04/2008, 14:37:
Paretje's blog is nu volledig XHTML valid!

13/04/2008, 15:00:
De codes (gewone codes, maar vooral PHP-code) hebben voortaan een scroll-bar wanneer deze niet in de pagina passen, in de breedte. Op die manier zouden zowat alle uitstulpingen van menu of pagina over de gehele site verdwenen moeten zijn.

13/04/2008, 15:22:
Er zijn wel wat errors op het forum, maar daar zal ik nu niet meer aan beginnen aangezien MyBB 1.4 nadert.

13/04/2008, 16:53:
De volledige site is nu 100% XHTML Valid bevonden, en dat zal ik tonen door in het menu een extra balk te zetten die daarop wijst.

Buiten de aanpassingen heb ik ook een bug gefixt in de laatste posts op de site zelf, die verwees namelijk nog altijd naar de Community Forums.

13/04/2008, 17:29:
in het menu lukte niet, doordat dan telkens het menu zelf wordt gecontroleerd. Ik heb het nu in de footer geplaatst.


Groot succes?

Is het Online - Urbanus Forum zo'n gigantisch succes? Er staat namelijk in de statistieken dat 100% van de gebruikers een post heeft geplaatst. Dat is natuurlijk door het feit dat enkel gebruikers die een post hebben geplaatst in de forums na verplaatsing/splitsing zijn gebleven.

Verder heb ik het logo hermaakt, en dat valt toch op aan kwaliteit, al is het globaal nog altijd hetzelfde logo.

Ik heb ook zojuist een fix online geplaatst van de Nederlandstalige vertaling van de Reputatie manager. Met name bij het updaten kwam er een nogal raar teken te voorschijn, dit opgelost door het gebruik van ü. Verder verscheen er wanneer er een nieuwe reputatie was "Er geen nieuwe reputatie...", een beetje vreemd, niet?

En om nog een beetje verder te gaan heb ik nog een bugfix gemaakt voor het report systeem, deze bevat een controle op de array, zodat er geen PHP error verschijnt wanneer er geen reports zijn.