Midgard Mind Reduction

My Midgard Diary

2005-04-19

New component net.nemein.bookmarks

One of my goals in the Midgard Workshop last weekend was to get my first Midcom component net.nemein.bookmarks ready and in cvs by the end of the weekend. As you might guess I managed to do it and n.n.bookmarks can be found in cvs. If you want to see it in action Bergie is running net.nemein.bookmarks at hes blog site.

The component it self is a lot like http://del.icio.us which is a social bookmark manager that allows you to share your bookmarks with other people. Actually the idea was to make it exactly the same so that it would easily be possible to sync bookmarks from n.n.bookmarks with http://del.icio.us.

Adding a new bookmark is very easy if you have dragged a bookmarklet from admin page to your browsers toolbar. Just surf around internet and when you find an interesting page just click "Post to net.nemein.bookmarks" from the browsers toolbar and you will be redirected to a page for entering some additional info like a tag(category) to the bookmark. After submiting you'll get redirected back to the page you just bookmarked.

I'm planing to make some new features to the component in the near future. One of them is an RSS feed of the latest bookmarks which shoulden't be a big deal and the secound one is to make the syncing with http://del.icio.us cron runnable so that you don't need to worry about doing it manualy. I'm also trying to find out if it's possible to sync bookmarks with Firefox.


2005-01-21

Midgard Mac OS X 10.3.7 installation

Preparations
************

Installed mysql via fink
$ export PATH=$PATH:/sw/bin
$ sudo /sw/bin/apt-get update
$ sudo /sw/bin/apt-get install mysql
$ sudo /sw/bin/apt-get install mysql12-dev

Installed expat via fink
$ sudo /sw/bin/apt-get install expat


Installed glib via fink
$ sudo /sw/bin/apt-get install glib
$ sudo /sw/bin/apt-get install glib2

Installed gettext via fink
$ sudo /sw/bin/apt-get install gettext

Instaalled dialog via fink
$ sudo /sw/bin/apt-get install dialog

After hours an hours of trying to figure everything out I found out that
there is a know issue with the Mac OS X packages not supporting dynamic libraries very well, so I compiled Apache2 from source and did the same thing with php.

Installed Apache-2.0.52 from source
$ ./configure --prefix=/usr/local/apache2 \
--enable-module=so \
--sysconfdir=/usr/local/apache2/conf \
--libexecdir=/usr/local/apache2/libexec
$ make
$ sudo make install

Installed php-4.3.10 from source
$ ./configure --prefix=/usr/local/php \
--with-mysql=/sw \
--with-apxs2=/usr/local/apache/bin/apxs \
--with-iconv=/sw \
--with-iconv-dir=/sw \
--with-exif \
--with-xml
$ make
$ sudo make install
$ sudo cp php.ini-dist /usr/local/php/lib/php.ini
$ sudo /usr/local/apache2/bin/apachectl start

Added these lines to my httpd.conf:
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps

$ sudo /usr/local/apache2/bin/apachectl start

Placed a small script () to my document root to see if php is working properly.


So far so good! At this point I made sure everything was nice and cozy for Midgard.

The fun part starts here...

midgard-core
************

$ ./configure --prefix=/usr/local/midgard --with-mysql=/sw
$ make
$ sudo make install

midgard-apache2
***************
$ ./configure --with-apxs2=/usr/local/apache2/bin/apxs \
--with-midgard-config=/usr/local/midgard/bin/midgard-config
$ make
$ sudo make install

midgard-php4
************

$ sudo ./mkall --with-apxs=/usr/local/apache2/bin/apxs \
--with-apr-config=/sw/bin/apr-config \
--with-midgard=/usr/local/midgard/bin/midgard-config\
--with-php-config=/usr/local/php/bin/php-config

Added these to my php.ini:
extension=midgard.so
register_globals=on

midgartd-data
*************

$ sudo mkdir /usr/local/midgard/blobs
$ sudo chown nobody:noboby /usr/local/midgard/blobs
$ ./configure --with-apache-user=nobody \
--with-apache-group=nobody \
--with-blobdir=/usr/local/midgard/blobs \
--with-apxs=/usr/local/apache2/bin/apxs
--with-midgard-config=/usr/local/midgard/bin/midgard-config
$ sudo make install

Datagard needs to be ran twice. The first time for installing database and the second time for importin Aegir, Midcom, Spider-admin...and so on...
$ sudo /usr/local/midgard/bin/datagard/datagard

Something that has to be done
$ sudo chown nobody:nobody /usr/local/midgard/var/cache/midgard
$ sudo chmod 0771 /usr/local/midgard/var/cache/midgard

$ sudo /usr/local/apache2/bin/apachectl restart

Voila...I have Midgard on my Mac OS X

Helppoo ku heinän teko!

2005-01-15

Santa gave me an iBook

Yeah its true, Santa gave me a brand new iBook today...can you belive that. My old Omnibook was getting a bit too cranky with all the strange noises coming out of it and the fact that the new Ubuntu distribution Warty was running way too slow on it. I also didn't quite like the battery that lasted for like 30 sec without the power supply being attached.  Old laptops just are like that, I guess.

Well anyway I'm very pleased with my new toy and installing some software on it as we speak. I think I might even install Ubuntu on it later. Just hoping it's not a big pain in the ass to install Midgard on it...Bergie told me it's easy so everything should be ok.

Err...I have to learn to type with this strange Apple keyboard...=)

2004-12-10

Back in the office

I haven't been blogging for a long time and the reason is that I have been mainly studying. However I have done some development on net.nemein.discussion which unfortunately was accidently destroyed by Torben. No hard feelings man, these things happen although they shouldn't happen.

The reason I'm blogging now is that I'm back in the office as we speak and ready to start working for Nemein again.  As a part of my degree I will be a full time employee for the next 9 months and looking forward to work with Midgard and the people behind it. So I guess you will be hearing from me again in the near future.

The last summer was a great learning experience for me and I'm expecting the next 9 months to be even better, I know it will be. What could go wrong? Yeah right...*<;-)

Merry xmas to all of you!

2004-07-28

Still alive...

Its been a while since my last blog but don't worry I'm still around. The thing is that I have just been working and completely forgotten to blog...=) Anyway I'm happy with my Midgard experience so far and the fact that at this point I'm doing mostly profitable work instead of just improving myself. It's good for the company and for me as well. I'm mostly doing things on my own now and if I get in trouble I just call Kaukola and ask him for an advise.

When there's nothing else to do I have been making some changes to the MidCOM component net.nemein.simpledb. Bergie wanted to add some functionalities and apparently I'm the right man for the job.

The new features:
-Show the amount of entries found
-Sort by a desired column
-Delete attachments when an entry is deleted
-Title all untitled entries as "Untitled"

In order to get the sorting done I had to make some radical changes to the component and now there's a problem with showing attachments. I just hope it's something I can figure out...

Today I was building a new website for Nemein with a nice XHTML/CSS layout made by a talented graphical designer Lasse Larvanko. I had absolutely no problems fiting things into the layout. Hopefully the new site will be ready to be unleashed as soon as possible.



2004-07-12

Search engine

These past two days I have been working on a search engine for news. This energy consultancy I made the search engine for has a huge amount of news or rather reports and well you know how it goes...they want a search engine and I know how to make one. My first search engine with Midgard.

As I have previously explained I added two multiselect fields to the schema for some keywords to be added to parameters. These keywords are then used in the search. There is two selections for the keywords and a normal text input field for searching a word in the content.

I used these Midgard functions in the search engine:

mgd_get_object_by_guid()
mgd_list_topic_articles()
mgd_list_topics()

I most likely forgot a function or two from that list...doesn't really matter does it? The main thing is that the search engine seems to be working as it should, I'm happy with it and I did learn things during the process.




2004-06-29

Email spammer

I had some good time trying to fix an email spammer today. It seems like it broke when we last time added some new functionalities to it about a week ago but I actually didn't find anything funny about that code and it shouldn't be a problem. Instead I found a lot to fix all around the script...=)

It's an email spammer that sends a notice about updated topics to people that order them and checks also that the people ordering these notices have access to the topics. Anyway the point is that there was a lot of legacy code in there and most of the time I was just trying to understand the guy that wrote the code.

The original code was written by Henri Hovi and then "copy, paste, rewritten" by Bergie and finally rewritten by Kaukola and he propably did some copying and pasting too...well it sure seemd like it. Now it's my time to try and make it better or more like making it work in the first place.

I think I did manage to make it work for now...and I surely hope it will stay that way. There however is still things in the code that need fixing and I have the feeling that it will be me doing it...=)



2004-06-23

Bubbly bubble

By now you all propably know that Nemein's website is being redesigned with a talented graphical gesigner Lasse Larvanko. And well it naturally conserns me too so today I did my part for the new site...though I'v got a feeling that there will be more, which is nice. I hope it will be something with Midgard because really I need the practice.

We were discussing the new layout yeterday and there are these round images here and there that we call "bubbles". We like dynamic things so there is no chance we are going to make the "bubbles" one by one with Gimp, especially if they are changing every month or something. I had made some image manipulation with PHP previously so Bergie gave me the job to write a script that makes the so called "bubbles".

The first version is ready now and I think it does the things we wanted it to go except for a little matter with resampling an image that has transparent areas. I don't know if this is a bug in PHP or am I doing something wrong but doing "imagecopyresampled()" and "imagecolortransparent()" on the same image doesn't work the way it should...
//This creates the bubble
function bubble ($path,$widht,$height) {
$img = $this->loadpng($path);
//$img = $this->resample($img,$widht,$height);
$diameter = $this->diameter($img);
$border = imagecolorallocate($img,100,100,100);
$frame = imagecolorallocate($img,200,50,60);
$cx = $this->sweetspot($img, "x");
$cy = $this->sweetspot($img, "y");
imageellipse($img,$cx,$cy,$diameter,$diameter,$border);
imagefilltoborder($img,0,0,$border,$frame);
imagecolortransparent($img, $frame);
return $img;
}
I'll continue figuring it out...

2004-06-22

OpenPSA Tech Support initialization

Today I was initializing the OpenPSA Support-module. I had some really good time doing it...=) So here is what I did and it even works..which is nice.

Created these topics and articles:

Topic: __TechSupport (owner=Nemein.Net User)
Topic: __TechSupport_Config (owner=Nemein Oy administrators group)
Article: Configuration

In the "Configuration" I wrote this:
 $techsupport[lock_timeout]=300; //5 minutes
$techsupport[TT][timeformat]="d M Y G:i";
$techsupport[TN][timeformat]="d M y G:i";

$techsupport[confirmCustomerEmailSend]=1;
$techsupport[autoQuoteTicket]=1;

$techsupport[hidefields][crmcompany]=1; //Field not implemented in editor yet
$techsupport[hidefields][idstring]=1; //Save some space in the list

And in the __TechSupport_Config I created these topics:

Type, Target, Priority, Severity, Publicity and just added the targets we needed.

It's very important to set the TechSupportACL parameters to the Nemein.Net Users group, otherwise there wont be a toolbar at all.

I set these parameters to the __Nemein.Net Users:

TechSupportACL, create, 1
TechSupportACL, modify_all, 2
TechSupportACL, modify_own, 2
TechSupportACL, view_details_all, 2
TechSupportACL, view_details_own, 2
TechSupportACL, view_list_all, 1
TechSupportACL, view_list_own,1




2004-06-21

Schemadb

Today was a bit frustrating but at the same time very interesting. Frustrating because the server that runs the website I was working on is damn slow! Roughly half of the time is just waiting for the damn site to load. The interestin part was the metadata input script I was working on.

I got familiar with schemas and specially the multiselect datatype. There is like no documantation about it what so ever and even Kaukola coulden't  remember how to create the selection list but luckily he was able to find an example from some previous project.

I did something like this:
        "clientareas" => array (
"description" => "Asiakasalueet",
"datatype" => "multiselect",
"widget" => "multiselect",
"multiselect_selection_list" => array (
"example1" => "Example1",
"example2" => "Example2",
),
"location" => "parameter"
The Plan is to input some metadata that can be used for searching a certain announcement with a search engine I'm still working on...well haven't really started writing it yet but it's the next step.

2004-06-15

All by my self

Until today I have always been with an experienced consult but today was different. I guess Kaukola trusted me eneugh to let me handle a case all by my self...which by the way was very interesting , though it was a very easy plain HTML job. I think the main thing was to interact with the people and trying to figure out the problem.

An employee from the customer had update some pictures to the layout of their intranet site and managed to explode things up. The main reason for it was that he knew nothing about HTML...=) I just did some small fixing and the site was looking fine again. It was very easy...too easy I'd say but hey I'm happy if I get payd.  It in fact took me more time to get there than it took me to fix the site...=)

There wasn't anything else for me to do today so I went back home and continued my project of translating OpenPSA documents from finnish to english.

Had some fun today

2004-06-10

Townportal hacking

This was one of those days that I hope there was a lot more. Coding with mgd-functions is the thing I should be doing more and well today was all about it. We have a project using Townportal and with Kaukola we spent the whole day hacking some new functionalities in.

The customer wants to be able to create a project with body bacground color, page background color, font family, font color, font size and a project logo. They want every project to look different...don't ask me why. Anyway this was my job and the main part was the project logo upload functionality.

I used these:

$article->createattachment
$article->openattachment

fputs() doesn't upload images so I had to read it first with fread()...it took some time to figure this out...=)

Hopefully Bergie is happy with me hacking his precious Townportal...=)

2004-06-10

RAID installation

Today was one of those days that doesn't really make any sense...=) A RAID installation would usually be Rambo's job but the unfortunate thing is that he's on a vocation...damn it. Me and Kuokola both have as much experience installing RAID and that is none. Kaukola had something else to do so we agreed that I should try to install the RAID.

I don't have keys to the server room so a guy from TMV-vision gave me a ride and let me in. Rambo had given me some instructions about the RAID installation, which was helpful. To avoid problems with initrd I compiled a custom kernel with EXT3, SCSI and RAID1 and didn't have any problems with that.

I rebooted the system with the new kernel and the result was a kernel panic...typical...=)

Something like:

Kernel panic: VFS: unable to mount root partition /dev/sda3

Hmm...don't know if I forgot something from the kernel...well anyway it just can't mount the root partition. The guy from TMV-vision had to leave so I went with him and had to leave the problem unsolved.

No RAID, no serving Midgard sites...

2004-06-06

Feeling tired

It was a warm and beautiful morning and it usually wakes me up but as I had only a litle sleep last night, I was very tired and in desparete need of a cup of very black coffee.

In the morning we had a meeting with two of Nemein's partners FTC and TMV-Vision. It was a very small meeting and I wasn't really needed so taught that it would be nice to finish with the MidCOM site I started yesterday. I was busy with the site while Bergie was in the meeting with couple of guys. I don't really know what did they discuss and well it propably isn't even important information for me.

At about 01:00 pm we had our weekly staff meeting in a restaurant near by our new office. And well what should I say about that...we were all tired and it turned out to be a bad time for a meeting so we just did a quick overview of what had been done since our last staff meeting and went back to the office...

2004-06-06

The worst day ever

Today nothing went like planed. First of all I was sopposed to stop by the office and pick up some Debian woody cd-roms for a new server  box that was at our new office with FTC and TMV-Vision. The secound thing was for me to meet Kaukola after some dental operations he was sopposed to have. Well what happened was that I was still at home and  just about to leave with plenty of time to what we had agreed and suddenly he calls me that he had already gotten out of the dentist and that I should hurry...=) Well I did and the result was that I took the wrong bus..damn...I waited for a nother bus for 30 min and as lucky as I am the secound one didn't go exactly where I was going, so I had to walk like 2 km to the office. After all I did manage to meet with Kaukola and we continued the saga together.

At the new office we were trying to install the Debian woody to the new server box but it just refused to work. So we had to download a new version of Debian that actually works but just with one harddrive...=) It can be fixed later...

The most fun I had today was creating my first MidCOM site for a customer. It's a very small site and I was given like 2 hours to get it done...but I surely used a lot more that 2 hours.

A horrible day...

2004-06-04

Debugging, fixing and gluing

This was one of my favorite days at work since starting with Nemein. The one and only reason for this is that I was once again given a real job instead of doing someones dirty work for him. I'm a trainee so I guess it's my responsibility to do all the dirty work but it doesn't mean I have to like it...;) Luckily today was different...

I was fixing a password retrival system that didn't function the way it should. Well mostly it did function but there was some strange behaviour and wrong error messages. I was mainly reading the code and trying to figure it out or rather trying to figure out the one who wrote the original code...I think it was Bergie but I'm not at all sure about it. The solutions to these minor bugs where however very simple as they alway are...=) The main thing is that I fixed the code and it's working now as it should...

Thats about it for today...well we went back to the office and Rambo showd me how to type in some bills for Bergie to pay eventually. Thats the dirty work I'v been talking about...=)

2004-06-01

OpenPSA documentation

Ok...today was a very beautiful day and the irony in it all is that I'v been complaining about the weather all the time and when it's warm and shiny I'm sitting at home all day long...oh well, thats life...

There was nothing much happening today. I was busy with the OpenPSA documentation. The documantation was originally written by Petri Kuusela in finnish. So my job is to translate it to english and replace anything that says Nemein.Net with OpenPSA. As you all know OpenPSA was Nemein.Net before it was released under the GPL.

I just read my email and found out that I was given a small project of my own. I don't know much about it yet but it's a MidCOM site for sure. These are the jobs I have been looking forward to. I'll tell you more about the project when I know more.

2004-05-30

Some real action

Today was one of the best days I'v had since starting in Nemein. Well the weather wasn't what I had in mind when I woke up, I just had to imagined that it was a warm and a shiny day...because it wasn't but this is how I manage...=)

The thing about today was that I actually wrote a small script for a customer. That was my first offical script I have wrote using midgards functions. What I wrote was a small tool for moving articles. I used "mgd_errstr()" and "mgd_move_article()". The last one is a very funny function, returns zero if succesfull...strange...

Anyway here it is:

//Whether to run as a simulation
$simulation = false;


extract($_POST);

if (is_array($moveArt)) {
foreach ($moveArt as $id) {
if (!$simulation) {
if (!mgd_move_article ($id , $moveTo)) {
echo "ERROR: Filed to move article $id under topic $moveTo"
 . mgd_errstr() . "<br/>";
} else {
echo "Moved article $id under topic $moveTo<br/>\n";
}
} else {
echo "Article $id would have been moved under topic $moveTo
<br/>\n";
}
} else {
echo "ERROR: $moveArt is not an array, make sure you have selected
at least one article";
}


I'm eager to learn more now that I'v wrote my first offical script using midgards functions. The problem is that there hasn't been a good project for me yet, after all there isn't any better way to learn than by doing your self.

Was a interesting day.

2004-05-27

Yet another meeting

Kaukola had given me keys to Nemein's office so I taught that I would be a lot more productive there than at home. I was mostly writing documentation for OpenPSA but I was also trying to get my new toy (D-link DWL-650) to work with my Mandrake linux 10.0. There seems to be an irq related problem.

The main thing today was a meeting with one of the biggest customers we have. It was a very friendly meeting and well I think they had made up their mind about a new MidCOM site even before the meeting.  We also agreed that  Nemein should send a consultan over at least once in a month. Sounds like a good deal...

Well...I think thats it for today. Tomorrow should be an interesting day so I'm kind of enthusiastic about it. Read my next blog to find out what went down. Well more like what didn't...=)

2004-05-27

The first office day

Well well now...you taught you'd get a way this time. No way...its time for my daily weather report. Today was a very warm day, so I guess the summer is coming after all. It was hot like hell in the Nemein's office...

So today was my first day at the office, thats kind of strange because I have been working since last monday. Who needs an office anyway we'v got laptops. Anyway Kaukola showd me how everything works and so on.

In the morning I was mainly occupied with a D-link DWL-650 pcmcia wlan card that just refuses to work on my Mandrake linux 10.0. There seems to be a problem with a kernel module "memory_cs". I'll make it work I'm sure.

At 1:00 pm we had a weekly Nemein staff meeting in a restaurant. We talked about the future, our customers and if I'm ready to build a basic MidCOM site for a customer on my own... the future will tell.   

2004-05-25

CSV parsing and a final exam

Today I had some unfinished business at school so I had a very short but intensive day at work. The thing was that I had to do a final exam at Cisco Networking Academy about Networking basics, I even passed...;)

The original plan was for me to meet Kaukola in the morning but my exam got on the way and we met eventyally about 12:30 pm. He had already started with a CSV parsing script. The idea was to get some product information from a CSV file. The file was looking kind off cryptic at first but we managed to find an easy way to get rid of everything we didn't need. All of the lines we wanted started with " ; " so that made everything pretty easy for us. A good consultant always needs some luck...=)

It was getting late so we decided to head back home and continue some other time. Next friday or something...I really need a calendar...

2004-05-25

Specs and hacks

It's unfortunate that today it was a very shiny outside. Well the unfortunate part was that I had to spend the whole day inside. I guess thats what this cunsulting business is all about...=)

I met Kaukola at 8:45 am at the central railwaystation in Helsinki. He had agreed to meet our contact at 9:00 am. So we went to this impartial service promoting company that has been a customer of Nemein for a good while. After a cup of coffee and itroductions we started to work with Kaukola. We just did some fixing as usual and drank some more coffee.

However the main thing today was specs of a new service. So after lunch we had a meeting about the new service. I thing we managed to make some good notes about what should be
include and what shouldn't. Everything is pretty much set for the one that gets to do all the fun stuff...programming.

A usual day with Midgard

2004-05-22

Site building and crappy jobs

Today was again one of those cold, windy and depressing days. No wonder Finnish people are the way they are. Lyckily I was inside most of the day, feeling the warmth of a monitor...=)

I had agreed to meet Rambo at 9:00 am at a very important and propably the biggest customer Nemein has. Rambo had a little job for me, which was updating some documents with Aegir. Anyway he left me with it and went off to do something more important. Later on Bergie came in and had a similar "crappy job" for me, this time it was deleting some empty documents that had been created by a bug in the system.

At later time I was again improving my blog site. There was a small problem with IE that I took care of but the main thing was to create a commenting system using MidCOM component (net.nemein.disscussion). I'm not yet happy with it although it seems to work somehow. I think that a dummy user needs to be created for commenting...or something.

Finally we went to this small teleservice company. At first Rambo was fixing a firewall that had a major hole in it. The firewall should be fine now. The secound thing was to install a dual processor system no a server. Well everything was fine untill we compiled a new kernel. While the kernel was compiling we ordered some pizza and ate while waiting for the damn kernel to compile. After all that waiting we couldn't even make it work with the new kernel so we had to leave the server running with a single processor.

Was a long day, but still very intriguing.

2004-05-20

Building my site

The fact that Bergies cell phone was down made it impossible for us to arrange things so I just decided to continue my site building process at home, which was a good thing because it's a peaceful enviroment and not some busy office where you can't even hear your own taughts.

Today was just about playing around with MidCOM and Aegir. I'm beginning to understand Midgard now. All it takes is to build a simple site and play with it. The site creation process is much like building something with LEGO-blocks...=) I wasn't doing anything fancy though, just writing CSS and fixing the HTML to suit my needs. I'm not yet happy with the layout but it's beginning to be satisfying.

I now understad how to use some of the most basic LEGO-blocks in MidCOM, for example:

<(navi)>

<(breadcrumb)>
<(content)>
<(edit-this-page)>

This was an important day in my learning process.

2004-05-18

My first Midgard site

Today it was just depressing to go outside. It was damn cold and the wind sure wasn't helping, in addition to that it was also raining. So it was clearly not a good day to ride a motorcycle...=(

Anyway we went to this advertising agency and picked up where we left yesterday. Bergie started to hack the site and my job was again just to observe and learn. The main idea was to fit MidCOM in the site layout and to do some fixing and gluing...or was it deploying...=)

My major achievment however was building my very first Midgard site. As you might guess, I was building my blog site. Bergie gave me some tips and left me with it. So there I was scratching my head and trying to figure it out...=) At first I had a problem that I can't really explain at this point. Though I was shown a way to fix it from Aegir, which was very interesting and I just hope that I can do it again if required.

I mainly made some styles and styleelements like this:

<h1>&(view["title"]);</h1>
&(view["content"]:h);

Not too complicated...eh...=) Someone would have done all this in like a minute but it took me like an hour or more to get my simple site up and running.

So after all, this was a good day too.

2004-05-18

The first day and hopefully not the last of my career as a consultant

The sun was shining and the birds were singing in the morning. I met Bergie 9.00 am at his place in Helsinki and we took a ride with his motorcycle to the first customer or rather a partner. People were nice and after a cup of coffee we started to work, well I was spectating Bergie as he made a site initialization with MidCOM. So we created a site from MidCOM-template in no time. I learned a lot from that.

The next place wasn't that friendly. Bergie made a presentation about Midgard and I was doing my part just sitting down and trying to look like a professional. I think it went well although it seemd like people were kind of skeptical about us. Maybe they were scared of me...=)

Finaly we took a ride to a big customer where I almost got my hands on something I'm familiar with, PHP-code. Bergie had a meeting and I was doing some debugging and fixing with Kaukola though I learned that it's not something to tell to a customer. The correct word was deploying or something...=) Well anyway it was about creating users from MS Excel with a CSV import tool. I was also made aware of some mgd-functions like mgd_is_member() which we discovered to fail if user id and group id are in string format. It took some time for us to figure this out and the solution was very simple too, we just had to manually typecast the arguments. I belive, this is a good piece of information.

Altogether it was a very good day.