I have an internet connection again, so things should be returning to normal.
I have been meaning to upload the source for several projects but never got around to doing it. Luckily I got the time so I have now uploaded the sourcecode for the last remaining sourceless projects.
The fresh round of sourcecode uploads affect
EQ Log ParserThe Mining MysteryDKP Log Parser
As always, feel free to do what you want with the source. Though I would...
The new version of the log filter is progressing at a steady pace. I did indeed make some modifications to the class diagram before I started with the coding. This is the diagram that I'm currently using.
I think it's fine at the moment, considering that I view class design as one of my weaker areas (which I'm planning to fix this summer). The thing I'm a bit concerned with is the heavy dependency on the Filter class, along with a complicated...
I'm now in the position where I have a lot of free time ahead, and I plan to spend as much of it as possible on programming. To start off I changed the website's colors around a bit, mainly because I didn't like the lightblue background (and it wasn't very web safe either). Feel free to feedback on the color change if you want.
Next up on my todo list is to rewrite the Multipurpose Log Filter to improve the GUI, implement more functionality and...
This is a fairly scattered update. I have done a lot of small fixes here and there. DKPLU finally has support for both EQ2 and EQ1, the admin panel generator of lokorin.com has been updated and a bug in MPLF has been fixed.
First things first. DKP List Updater was originally designed to work with both EQ1 and EQ2 but the UI was too buggy when I played EQ2 for me to be able to implement the EQ2 support. The EQ2 UI is now fairly okay so I have uploaded...
All forms have been replaced so I wrote the admin control panel library that I talked about in my last entry. I'm quite happy with how it turned out. My admin panels used to be 200ish lines of custom code each, which was not the funniest of codes to write either. The code also used to be very repetitive in structure, but not in contents, which meant that it wasn't possible to just duplicate panels for each DB.
With the newly written library it...
I don't feel very creative at the moment so I decided to do something that has to be done sooner or later. The old form library was a bit clumsy so I remade it. It doesn't change a lot for users, but it does make the forms a bit easier to manage for me.
Here's an example of the code differences between the two libraries (the "Contact Me" form).
Before:
<?php
$root = '';
$title = 'Contact';
$css = '';
require_once($root.'_includes/common.php');
require_once($root.FOLDER_INCLUDES.'lib_forms.php');
$fv = new FormValidator(array(
'email' => false,
'title' => true,
'message' => true));
if($fv->is_form_valid()) {
//Process the values here (extracting them from $fv).
$output = 'Thank you';
} else {
$fields = array(
'email' => array(
'display_name' => 'Your e-mail address (optional)',
'type' => 'text',
'size' => 20),
'title' => array(
'display_name' => 'Caption',
'type' => 'text',
'size' => 20),
'message' => array(
'display_name' => 'Message',
'type' => 'textarea',
'size' => 15),
'submit' => array(
'type' => 'submit',
'value' => 'Send')
);
$form = new Form($_SERVER);
$form->set_validator($fv);
$form->add_fields($fields);
$output = $form->get_form();
}
include($root.FOLDER_INCLUDES.'header.php');
echo $output;
include($root.FOLDER_INCLUDES.'footer.php');
?>
After:
<?php
$root = '../';
$title = 'Testing';
$css = 'form';
require_once($root.'_includes/common.php');
require_once($root.FOLDER_INCLUDES.'lib_forms2.php');
$form = new Form($_SERVER, 'post', 'Contact me');
$form->addField(new TextField('email'), 'Your e-mail address (optional)');
$form->addField(new TextField('caption', true), 'Caption');
$form->addField(new TextArea('message', true, 16, 60), 'Message');
$form->addField(new SubmitButton('submit', 'Send'));
if($form->isValid()) {
//Process the fields' values here (extracting them from the defined fields).
$output = 'Thank you.';
} else {
$output = $form->getForm();
}
include($root.FOLDER_INCLUDES.'header.php');
echo $output;
include($root.FOLDER_INCLUDES.'footer.php');
?>
As...
I have been gone for a few weeks while working on a side project, but I'm done with that now. So it's time to continue working on the projects on this site.
To start off I did something which I have been meaning to do for a while now, I added an RSS feed for this site's news. It's a simple XML version of the news which enables people to read the news with RSS tools and to subscribe to the news. The feed can be found in the news menu or subscribed...
I have added some better documentation to JUpdater. It should now explain exactly how the process works and how one installs the client and server parts of the program. I have also fixed some minor bugs in the server part of the program.
I'm still working on a side project and will be doing so for the next two/three weeks, I'm afraid that the updates here will be scarce during that period.
The server part of JUpdater has now also been completed. I have uploaded the program (both the client part and the server part) to the miscellaneous java download page.
Beware though, there ought to be a fair few bugs around as the program is in need of some more testing. It is also in need of some more detailed documentation, I threw together a couple of quick install readmes for this release but that and the code documentation is about it at...
I have been working on the java updating class during the last few days and the client part is now complete. My goal with the project is to create an easy to use utility that can be used by programmers to quickly and painlessly implement update checks in their programs to ensure that the user can always get the latest update without having to manually download anything. The only restriction is that the program has to be contained within a jar file,...