...was an actor, it would be Sylverster Stallone. It somehow looks slightly impressive with its sleeves rolled up. And then it opens its mouth...
Read more!
This blog is intended to serve as a development blog for the site http://www.entropiaonline.com. As the site progresses, we'll post code snippets and coding techniques of how we dealt with certain problems we ran into. Once the userbase starts growing, we'll also use this blog as a way to try and find out what the users would prefer seeing added next.
...was an actor, it would be Sylverster Stallone. It somehow looks slightly impressive with its sleeves rolled up. And then it opens its mouth...
Posted by Peter Schmitz at 09:29 0 comments
For a while now, I had adding an extra option to the Personal Tools on my list of things to do. My wiki's main entry point for my users is through my forum (which has a user-bridge to the wiki, meaning it is not neccessary for my users to create seperate logins for the wiki if they already have an account on the forum), but I wanted to add a link back to the main site somewhere.
The logo would have been my choice, but we use that for users to be able to return back to the main wiki-site. So I figured it would be nice to add this to the "Personal Tools" menu, which is the menu in the upper right corner that shows your username, "My talk", "My preferences", etc.
Here's how to do it. In your includes folder, there's a file called SkinTemplate.php. Open that in an editor, and look for the following:
[code]
$personal_urls['userpage'] = array(
'text' => $this->username,
'href' => &$this->userpageUrlDetails['href'],
'class' => $this->userpageUrlDetails['exists']?false:'new',
'active' => ( $this->userpageUrlDetails['href'] == $pageurl )
);[/code]
Directly above that, add the following:
[code]
$personal_urls['myId'] = array(
'text' => 'myText',
'href' => 'myHref'
);[/code]
myId is a unique identifier name for the personal url.
myText is the name you want the link to have
myHref is where the new link should point to.
That's it. You're done.
Note that the method above means the link will be the first link to appear. If you prefer setitng it somewhere inbetween instead, move the snippet of code to the proper location.
Posted by Peter Schmitz at 17:34 0 comments
Labels: Add a tab to Personal Tools, MediaWiki, MediaWiki Personal Tools
Another MediaWiki post. This time, I ran into some trouble after exporting all help pages from the official wiki, and trying to import them to my own, as described here.
I'd also recommend you to import Manual:LocalSettings.php, as that is referenced in one of the help pages in an admin-only box.
At the bottom of the list of files referenced, there's a whole bunch of images, which you have to save manually. Some include files in .svg format (vector based), but before you can actually use those, you need to install additional software.
My problem is that I have no idea how to install stuff my VPN, as I am not sure my host enabled a shell account for me. So rather than potentially messing up my box, or relying on my host for something I'm not even sure will add that much value, I figured I'd learn something about wiki, and just change the references from .svg to the png format in which I saved all the files.
As you see, the official wiki page is little help. "You might have to edit some pages to fix the link".
Anyway, here's the pages/items that require editing for the images:
Template:Admin_tip
Template:PD_Help_Page (I also removed some conditional IF statement here)
Further edits I did:
All pages: Removed {{Languages}} tags.
Help:Navigation - There's an admin-block halfway down the page that references a bunch of settings in the LocalSettings.php file. However, the link seemed broken. I replaced this:
{{mediawiki|Manual:LocalSettings.php#Upload location|upload location}}
[[Manual:LocalSettings.php#Upload location]], and the same for the other links in the block.
{{mediawiki|Extension:Inputbox|inputbox extension}}
[[Extension:Inputbox|inputbox extension]]
{{#if: {{{1|}}}|}}
}}[[Image:Nuvola apps important.svg|18px|Caution!]] '''Caution''': {{#if: {{{1|}}}| {{{1|}}}
[[Image:Nuvola apps important.png|18px|Caution!]] '''Caution''':
Posted by Peter Schmitz at 21:05 0 comments
Labels: copying helpfiles, fixing images, MediaWiki, MediaWiki help files, no svg, templates to edit
Recently, we downloaded and installed MediaWiki. To our surprise, our of the box, the toolbar available when installing is lacking quite a few buttons that are standard available on wikipedia itself.
The MediaWiki helpfiles are less than helpful, though they do contain a description on how to add a single (table) button. For those wanting to replicate the look of the actual wiki, here's the code for the remaining buttons. You'll need to make modifications to two files (make backups first):
/w/EditPage.php
Find the following snippet:
),
array(
'image' => $wgLang->getImageFile('button-hr'),
'id' => 'mw-editbutton-hr',
'open' => "\n----\n",
'close' => '',
'sample' => '',
'tip' => wfMsg('hr_tip'),
'key' => 'R'
)
,
array(
'image' => $wgLang->getImageFile('button-redirect'),
'id' => 'mw-editbutton-redirect',
'open' => '#REDIRECT [[',
'close' => ']]',
'sample' => wfMsg('redirect_sample'),
'tip' => wfMsg('redirect_tip'),
'key' => 'V'
),
array(
'image' => $wgLang->getImageFile('button-strike'),
'id' => 'mw-editbutton-strike',
'open' => "",",
'close' => "
'sample' => wfMsg('strike_sample'),
'tip' => wfMsg('strike_tip'),
'key' => 'S'
),
array(
'image' => $wgLang->getImageFile('button-linebreak'),
'id' => 'mw-editbutton-linebreak',
'open' => "
",
'close' => "",
'sample' => '',
'tip' => wfMsg('linebreak_tip'),
'key' => 'BR'
),
array(
'image' => $wgLang->getImageFile('button-superscript'),
'id' => 'mw-editbutton-superscript',
'open' => "",
'close' => "",
'sample' => wfMsg('superscript_sample'),
'tip' => wfMsg('superscript_tip'),
'key' => 'I1'
),
array(
'image' => $wgLang->getImageFile('button-subscript'),
'id' => 'mw-editbutton-subscript',
'open' => "",
'close' => "",
'sample' => wfMsg('subscript_sample'),
'tip' => wfMsg('subscript_tip'),
'key' => 'I2'
),
array(
'image' => $wgLang->getImageFile('button-smalltext'),
'id' => 'mw-editbutton-smalltext',
'open' => "",
'close' => "",
'sample' => wfMsg('smalltext_sample'),
'tip' => wfMsg('smalltext_tip'),
'key' => 'J1'
),
array(
'image' => $wgLang->getImageFile('button-hidden'),
'id' => 'mw-editbutton-hidden',
'open' => "",
'sample' => wfMsg('hidden_sample'),
'tip' => wfMsg('hidden_tip'),
'key' => 'HC'
),
array(
'image' => $wgLang->getImageFile('button-gallery'),
'id' => 'mw-editbutton-gallery',
'open' => "", ",
'close' => "
'sample' => wfMsg('gallery_sample'),
'tip' => wfMsg('gallery_tip'),
'key' => 'HC'
),
array(
'image' => $wgLang->getImageFile('button-blockquote'),
'id' => 'mw-editbutton-blockquote',
'open' => "",",
'close' => "
'sample' => wfMsg('blockquote_sample'),
'tip' => wfMsg('blockquote_tip'),
'key' => 'B1'
),
array(
'image' => $wgLang->getImageFile('button-table'),
'id' => 'mw-editbutton-table',
'open' => "{|",
'close' => "|}",
'sample' => 'class="wikitable sortable border=1 cellpadding=5"
|+ table name
|-
! style="color:#AAB5BE;background-color:#24313F;" | header 1
! style="color:#AAB5BE;background-color:#24313F;" | header 2
! style="color:#AAB5BE;background-color:#24313F;" | header 3
|-
| style="color:#24313F;" | row 1, cell 1
| style="color:#24313F;" | row 1, cell 2
| style="color:#24313F;" | row 1, cell 3
|-
| style="color:#24313F;" | row 2, cell 1
| style="color:#24313F;" | row 2, cell 2
| style="color:#24313F;" | row 2, cell 3
',
'tip' => wfMsg('table_tip'),
'key' => 'A'
),
array(
'image' => $wgLang->getImageFile('button-reference'),
'id' => 'mw-editbutton-reference',
'open' => "",
'close' => "",
'sample' => wfMsg('reference_sample'),
'tip' => wfMsg('reference_tip'),
'key' => 'R1'
)
'button-hr' => 'button_hr.png',
'button-table' => 'button_table.png',
'button-redirect' => 'button_redirect.png',
'button-strike' => 'button_strike.png',
'button-superscript' => 'button_sup_letter.png',
'button-subscript' => 'button_sub_letter.png',
'button-linebreak' => 'button_linebreak.png',
'button-smalltext' => 'button_small_text.png',
'button-hidden' => 'button_hide_comment.png',
'button-gallery' => 'button_gallery.png',
'button-blockquote' => 'button_blockquote.png',
'button-reference' => 'button_reflink.png',
'hr_tip' => 'Horizontal line (use sparingly)',
'table_tip' => 'Insert table (3 by 3)',
'redirect_tip' => 'Redirect',
'redirect_sample' => 'Target page name',
'strike_tip' => 'Strike',
'strike_sample' => 'Strike-through text',
'subscript_tip' => 'Subscript text',
'subscript_sample' => 'Subscript text',
'superscript_tip' => 'Superscript text',
'superscript_sample' => 'Superscript text',
'smalltext_tip' => 'Small text',
'smalltext_sample' => 'Small text',
'hidden_tip' => 'Insert hidden comment',
'hidden_sample' => 'Comment',
'gallery_sample' => 'Image:Example.jpg|Caption1
Image:Example.jpg|Caption2',
'gallery_tip' => 'Insert a picture gallery',
'blockquote_tip' => 'Insert block of quoted text',
'blockquote_sample' => 'Block quote',
'reference_tip' => 'Insert a reference',
'reference_sample' => 'Insert footnote text here',
Posted by Peter Schmitz at 18:52 1 comments
Labels: edit the mediawiki toolbar, MediaWiki, toolbar, wiki
Today, news reported that the bible is no longer the most published book on earth, but that it in fact has been outnumbered in number of copies by the IKEA catalogue.
This calls for ten brand new commandments. The new ten IKEA commandments:
1) Thou shalt not buy assembled furniture, nor shalt thy buy furniture elsewhere.
2) Thou shalt always count thy screws before commencing assembly.
3) Thou shalt eat Swedish meatballs while thy shoppeth.
4) Thou shalt not cut ahead in line.
5) Thou shalt praise the brilliance of the cam screw.
6) Thou shalt be allowed to return thy damaged on delivery products.
7) Thou shalt not expect to be given a time of delivery.
8) Thou shalt make use of the children's playroom while thy shoppeth.
9) Thou shalt secure thy furniture to the wall in order to avoid toppling, and thou cannot sue IKEA in case of non-compliance, neener, neener.
10) The Allen Wrench shalt be the object of nightly worship.
Posted by Peter Schmitz at 20:11 0 comments
Just out of curiosity. How do others consider Business Objects? My former company, and my current employer use it as a reporting tool on top of their data warehouse. Basically, between the database layer and the end-user, there resides a Business Objects universe that acts as a semantical layer translating database-objects into business entities, which allows endusers without any knowledge of SQL whatsoever to quickly generate their own reports.
That's the theory behind it, anyway. In reality, expecially at my current employer, I have to develop the reports, even after the universe phase, because our client has all kinds of specifications for report layouts (that the Business Objects reporting suite was never intended to be used for, but the client already sold it to their client, and seeing THEY don't have to build it anyway, that's all fine and dandy). Add to that that the existing universe is plain unfit to be consumed by end-users, and I'm seriously wondering why on earth the company is paying top dollars every year for a product that greatly complicates even the most trivial tasks.
I present to you the following theory I came to develop over my time of working with Business Objects: "A properly desgined data warehouse (meaning star schemas using dimensions that make sense to business users) has no need for a translational layer like Business Objects provides". In other words, a proper star-schema makes the universe part of the BI implementation redundant, which will lead to the Business Objects reporting suite becoming at best a limiting (not to mention expensive) engine for making the data look pretty.
My main complaints with Business Objects:
* Pricing
* An engine that greatly complicates even the most trivial tasks
* Poor documentation and error messages
* Reliability is horrible. More than once I experienced things "magically" dissappearing or changing. At first I dismissed these as incidents or failure on my part, but I managed to be able to "reproduce" these anomalies.
* When you're working with a proper data warehouse, the universe layers adds extremely little value.
I'd be interested in hearing other people's opinions.
Posted by Peter Schmitz at 11:12 0 comments
Labels: business intelligence, Business Objects, data warehouse
The other day I figured I'd try installing XP on my Vista lappie. Unfortunately, I did not bother to read properly, and just went ahead and tried. Now one problem I have is that my DVD drive in the laptop has been wonky from the getgo. I also did not bother creating a second partition (d'oh).
Anyway, after starting the installation and going through the initial setup steps, my laptop started showing a new screen called Windows Boot Manager which showed the new XP setup, and was for some reason using that as a default boot. The end result was constant blue screens.
I eventually solved the problem by first having Vista display hidden folders and files, as well as OS files. Having done that, removing the XP entry is as simple as deleting the boot.ini file from the root folder of the drive. You can also remove the XP install folders called $WIN_NT$.~BT and $WIN_NT$.~LS.
Posted by Peter Schmitz at 09:56 0 comments
Labels: Vista, Windows boot manager, Windows Vista, Windows XP