Sunday, 28 July 2013

Customer Relationship Management

I am starting to code up CRM in @KwaMoja. In the past CRM has largely been ignored in webERP.

For this I have firstly added the ability to have sub areas. So for instance we could have the following setup:

                                             East African Community
                                                                |
                                                                |
                         ________________________|
                         |                         |             
                     Kenya               Uganda           
                         |
   ______________|____________
   |               |              |          |
             Coastal   Central
                   |
           Mombasa

As you can see its now possible to have multilayer sales regions. 

Next I have added the sales area to the sales person record. So now a sales person can be allocated to a particular area. In the above diagram our sales person can be allocated to any of the areas. So they could cover the whole of Kenya, or they could just cover the area of Mombasa.

Also I have added a flag to the sales person record to record whether they are an area manager. Each Area can have only one area manager. 

So it is possible to have a regional manager for Kenya, and also an area manager for each of the regions, Coastal, Central, etc.

This has already been coded and committed to the development code. Now we need to look at configuring the sales cycle.

Saturday, 27 July 2013

When censorsip goes mad

This page is written in response to the lies that +Phil Daintree has written about me, and spread on the internet. Despite years of searching he has been unable to find anything I have written that is untrue, and he has had to resort to vague generalities, faked emails, and badly fabricated screenshots (you can see the joins if you zoom in using any bit mapped image editor). +Phil Daintree is welcome to make any comments to these pages, as he has done in the past. If I agree with what he says I will amend my writings, if I do not agree I have allowed his comments to stand next to mine so that people can make their own judgements. I have every confidence in the intelligence of readers to make a sensible judgement based on the facts. +Phil Daintree will not allow me the right of reply to any of the lies he has told about me. It seems to me significant that he realises that if people see both sides of the argument they will see through his lies.

In a recent discussion on the webERP mailing list +Phil Daintree was writing about the new confirm boxes I did for +KwaMoja . This is the email he wrote:
Tim has also made some improvements to the confirm boxes but probably
unnecessary really, especially since it adds significantly to the size
of the file. 
 I then wrote back:
It only adds 996 bytes to the file, and this could be shortened further with the use of smaller variable names. To my mind they give a more consistent and professional feel across all browsers.
Phil refused to allow this email on the mailing list (for proof of this see previous blog entries), but I posted it to the nabble forums anyway as I thought it might be interesting to people. I then went away and played with this JavaScript a bit more, and managed to reduce the size of this function a bit more, so I posted the following:
Just for interest I reduced this to 921 bytes (0.899Kb) by using shorter variable names.
I tried this to the mailing list, but as usual it was rejected, so I posted it to the nabble forums. To my surprise it got deleted from there. I re-posted it and it got deleted from there again. It has now been deleted seven times by +Phil Daintree or one of his cohorts.

Now can anybody work out why a short post about reducing the size of a JavaScript function to 922 bytes should be considered so offensive that the readers of the nabble forums and the mailing lists need to be protected from reading it?
The only thing that I can imagine is that a recurring theme in his hate pages about me, is how much better a programmer he is than me, and maybe he thinks this email doesn't help that claim. I can't think of another reason.

Philippians 4:8

Amendment 3/1/2014:  I have since been informed  by +Exson Qu and +Phil Daintree that the reasons for deleting the above postings was that commenting on the length of a JavaScript function constituted a personal attack on +Phil Daintree. I have asked for clarification from either +Exson Qu or +Phil Daintree as to why this was, but have received no reply. My best guess is that +Phil Daintree had already said that including the function "adds significantly to the size of the file", and so my pointing out that it was actually quite small was contradicting him and so constituted a personal attack. Personally I think it constitutes valid technical discussion but I include it here as I have always said I am happy to put both sides of the discussion forward and allow readers to make their own minds up.











 

Thursday, 25 July 2013

Phil's morals reach new low

This page is written in response to the lies that +Phil Daintree  has written about me, and spread on the internet. Despite years of searching he has been unable to find anything I have written that is untrue, and he has had to resort to vague generalities, faked emails, and badly fabricated screenshots (you can see the joins if you zoom in using any bit mapped image editor). +Phil Daintree is welcome to make any comments to these pages, as he has done in the past. If I agree with what he says I will amend my writings, if I do not agree I have allowed his comments to stand next to mine so that people can make their own judgements. I have every confidence in the intelligence of readers to make a sensible judgement based on the facts. +Phil Daintree will not allow me the right of reply to any of the lies he has told about me. It seems to me significant that he realises that if people see both sides of the argument they will see through his lies.

It appears that +Phil Daintree has nothing better to do with his time and money than to spend it delving into my private affairs in a desperate attempt to find an example of somewhere I had said something untrue.

This week he sent an email to the webERP mailing list that was faked to appear to come from my email address. This email made some claims about me that were completely untrue. I sent three emails to the list that proved that the accusations were false. Like all my emails to the lists they were rejected. If there is anybody out there who still doesn't believe that my emails are rejected, here is the full rejection including the headers:

Delivered-To: tim.schofield1960@gmail.com Received: by 10.205.22.136 with SMTP id qw8csp104466bkb; Wed, 24 Jul 2013 13:40:56 -0700 (PDT) X-Received: by 10.182.43.230 with SMTP id z6mr31561268obl.82.1374698455868; Wed, 24 Jul 2013 13:40:55 -0700 (PDT) Return-Path: <web-erp-developers-bounces@lists.sourceforge.net> Received: from lists.sourceforge.net (lists.sourceforge.net. [216.34.181.88]) by mx.google.com with ESMTPS id fg9si22656181obc.146.2013.07.24.13.40.55 for <tim.schofield1960@gmail.com> (version=TLSv1 cipher=RC4-SHA bits=128/128); Wed, 24 Jul 2013 13:40:55 -0700 (PDT) Received-SPF: pass (google.com: domain of web-erp-developers-bounces@lists.MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Subject: Request to mailing list Web-erp-developers rejected From: web-erp-developers-bounces@lists.sourceforge.net To: tim.schofield1960@gmail.com Message-ID: <mailman.0.1374698451.16766.web-erp-developers@lists.sourceforge.net> Date: Wed, 24 Jul 2013 20:40:51 +0000 Precedence: bulk X-BeenThere: web-erp-developers@lists.sourceforge.net X-Mailman-Version: 2.1.9 List-Id: webERP Developers <web-erp-developers.lists.sourceforge.net> X-List-Administrivia: yes Errors-To: web-erp-developers-bounces@lists.sourceforge.net Your request to the Web-erp-developers mailing list Posting of your message titled "Re: [WebERP-developers] Testing Tims weberpafrica.com email" has been rejected by the list moderator. The moderator gave the following reason for rejecting your request: "No reason given" Any questions or comments should be directed to the list administrator at: web-erp-developers-owner@lists.sourceforge.net 


Oh, and just in case there is anybody out there who still believe in Phil's lie about me only being moderated on te forums, here is your proof:


Having failed to get my refutation on the mailing list I tried sending them to the nabble forum. Phil then removed my postings to that forum as well. So he is happy to post lies about me to the mailing lists, but removes my refutations. I have known Phil a long time, and suffered greatly from his hate campaign against me, but even I was surprised by just how low he has now sunk.


This isn't new, I am not the first to suffer in this way. Phil forced out many of the earlier developers without whom webERP would never have existed. People such as +Steve Kaill and Danie Brink who did so much of the early work (if you don't believe me just Google their names along with webERP, or simply check out the change log distributed with webERP) were forced out of the project back in 2007.


If this is the way that +Phil Daintree keeps on treating developers then the project will die, new developers wont want to be treated liked this. 

The Lord will judge Phil for his lies and his deceit, but I am sure that the webERP community will judge him for the harm he is doing to our project.

Saturday, 20 July 2013

Despicable act

This page is written in response to the lies that +Phil Daintree has written about me, and spread on the internet. Despite years of searching he has been unable to find anything I have written that is untrue, and he has had to resort to vague generalities, faked emails, and badly fabricated screenshots (you can see the joins if you zoom in using any bit mapped image editor). +Phil Daintree is welcome to make any comments to these pages, as he has done in the past. If I agree with what he says I will amend my writings, if I do not agree I have allowed his comments to stand next to mine so that people can make their own judgements. I have every confidence in the intelligence of readers to make a sensible judgement based on the facts. +Phil Daintree  will not allow me the right of reply to any of the lies he has told about me. It seems to me significant that he realises that if people see both sides of the argument they will see through his lies.

On July 11th we learned that a long standing webERP contributor had died. I had worked a lot with this gentleman, both when I was running the webERP project, and after Phil Daintree's takeover, so I was very saddened to hear this news.

I asked Phil in a private email whether he would allow me to post a small tribute to the webERP developers list. He said "write to the list using your tim@weberpafrica.com address if you would like to" so I did this. As with all my emails to the list this got immediately rejected.

I then wrote my mail to the nabble forum in this post. As can be seen the administrator of the mailing list has still not allowed this post through either.



I think that trying to use the death of a contributor to score points off me in his pathetic vendetta is truly a despicable act.

Amendment  25th July 2013

I am happy to say that +Exson Qu has been kind enough to send my message to the webERP mailing list. My thanks go to Exson for risking incurring one of +Phil Daintrees hate vendettas to do this for me.

Friday, 19 July 2013

When egos get in the way of managing the project

This page is written in response to the lies that +Phil Daintree  has written about me, and spread on the internet. Despite years of searching he has been unable to find anything I have written that is untrue, and he has had to resort to vague generalities, faked emails, and badly fabricated screenshots (you can see the joins if you zoom in using any bit mapped image editor). +Phil Daintree  is welcome to make any comments to these pages, as he has done in the past. If I agree with what he says I will amend my writings, if I do not agree I have allowed his comments to stand next to mine so that people can make their own judgements. I have every confidence in the intelligence of readers to make a sensible judgement based on the facts. +Phil Daintree will not allow me the right of reply to any of the lies he has told about me. It seems to me significant that he realises that if people see both sides of the argument they will see through his lies.

This post to the webERP mailing list shows the sad state affairs that Phil has allowed the management of the webERP project to sink to.

He is trying to copy my code because he wont allow me to directly commit myself, all because I I inserted a link to this blog in my signature on the forum. The fact that he wants my code in webERP is great, and fully within the spirit in which I contribute it to the GPL.

However his ego wont allow him to ask me for help as he doesn't understand how the code works. I would be more than happy to help if he asks.

The GPL states that he should leave the copyright intact, however he claims the ownership of the copyright to the code that he is copying.

In fact he goes further and doesn't even acknowledge in his commit message, or the change log that the code was written by me.

This is the problem when somebody's ego is bigger than the project.It highlights everything that's wrong with the dishonest way that the webERP project is being run.

Monday, 8 July 2013

Sorting html tables

I have just committed the code to sort HTML tables. So far this applies to only certain scripts, but to add it to any is easy, and should be done in all by tomorrow.

Here is the result of searching for stock items in SelectProduct.php


Now by clicking at the top of the Description column the table is automatically sorted and shows
and the items are sorted by item description. Clicking on that column again shows:

and the order of the items is reversed. This also holds true for the code column. I have also done the SelectCustomer.php script and the SelectSupplier.php script.

All this is done with one simple JavaScript function and minimal changes to the scripts.

This and the changes committed by Fahad earlier today means a huge leap forward for usability in KwaMoja. Hope you enjoy this new code.

Thursday, 4 July 2013

if (isset($_POST['ws'])){ //ws??? wtf???

This page is written in response to the lies that +Phil Daintree  has written about me, and spread on the internet. Despite years of searching he has been unable to find anything I have written that is untrue, and he has had to resort to vague generalities, faked emails, and badly fabricated screenshots (you can see the joins if you zoom in using any bit mapped image editor). +Phil Daintree is welcome to make any comments to these pages, as he has done in the past. If I agree with what he says I will amend my writings, if I do not agree I have allowed his comments to stand next to mine so that people can make their own judgements. I have every confidence in the intelligence of readers to make a sensible judgement based on the facts. +Phil Daintree will not allow me the right of reply to any of the lies he has told about me. It seems to me significant that he realises that if people see both sides of the argument they will see through his lies.


A strange title I know, but the story behind this is typical of the dishonest and abusive style of leadership that webERP is currently suffering from. 

This comment appeared in Phil Daintree's commit here. Including comments like this in code is inappropriate. If he has a problem with some code he should speak to the author of the code privately and not litter the code with such abusive comments.

What is amusing about this though is that he hadn't bothered to look up who did this code. A simple svn command tells us who did it:

13:37:23 $ svn blame Customers.php | grep 'ws'
   297   daintree                       '. ' . _('If this does not
happen') .' (' . _('if the browser does not support META Refresh') .
') ' .
  6033   daintree if (isset($_POST['ws'])){ //ws??? wtf???
   944   daintree       $ws = $_POST['ws'];
   944   daintree } elseif (isset($_GET['ws'])){
   944   daintree       $ws = $_GET['ws'];
   194   daintree       if (DB_num_rows($result)==0){
  4594   daintree       if (DB_num_rows($result)==0){
   194   daintree       if (DB_num_rows($result)==0){
   194   daintree       if (DB_num_rows($result)==0){
   194   daintree       if (DB_num_rows($result)==0){
   944   daintree                       echo '<tr class="OddTableRows">';
   944   daintree                       echo '<tr class="EvenTableRows">';


As can be seen, it turns out the author of the code is somebody called daintree!  Once I pointed this out to him, instead of his normal trick of ridiculing the authors work, he silently removed the comment here.

If it hadn't been Phil who had authored the code, what would have happened? In 2010 a developer called Marcos Trejo with the help of Pak Ricard developed an excellent module for printing labels, which has since been used by many businesses.

However, Phil didn't like this code. Instead of speaking to Ricard and Marcos privately about this code, and how it can be improved, he started to constantly ridicule the code on the mailing list. Almost daily we would wake up to yet more personal attacks on this contribution. This is not the way to encourage new developers. It is no wonder that Marcos didn't contribute any more code.

All contributors should be treated equally. All contributors should retain the copyright to their own work. Double standards should not be applied.