[Phpmyadmin-devel] Ajaxification of PMA

Rouslan Placella rouslan at placella.com
Sun Mar 18 12:36:11 CET 2012


On 18/03/12 11:08, Thilanka Kaushalya wrote:
> Hi Rouslan,
> 
> Hi Thilanka,
>>
>> off the top of my head I can think of an issue that can be solved with
>> some ajaxification. On tbl_structure page, if you use the "Add * index"
>> actions that are available in the "More" dropdown corresponding to a
>> column in the top table. You will be dropped to sql.php, which will show
>> the table structure page, but it will not include "tbl_structure.js", so
>> all the ajax actions on this page will be broken. Of course, if the "Add
>> * index" links would be ajaxified, this would no longer be a problem,
>> because we would not leave the tbl_structure page.
>>
>> Please do not take the following badly, but rather as constructive
>> criticism and as a way to learn from your mistakes. I find that some of
>> the ajaxification work that you did this summer was less then optimal.
>> As an example, let's look at some issues with the work that you did on
>> the index editor.
>>
>> First of all, you create a custom slider to hide the indexes table. This
>> was unnecessary, because we already have a PHP function that takes care
>> of this, which also respects the $cfg['InitialSlidersState']
>> configuration setting.
>>
>> Another issue was that in every ajax reply the top menu was included and
>> then removed from the reply via jQuery. This, of course, causes transfer
>> of waste data and it's better not to send it in PHP altogether.
>>
>> Then there was an issue when a user requested to add a column to the
>> index editor: the browser fired an HTTP request of the form to the
>> server, just to get the same form back with an extra empty field. Of
>> course, this action can be done on the client side by just cloning a row
>> from the table.
>>
>> So, I fixed all of the above and I also cleaned up the layout of the
>> editor in order to use less horizontal space and appear more
>> user-firendly. I invite you to look at these changes so that you can
>> learn from them. It's commit 863819cbdd759 and the following 10 commits
>> after that.
>>
>> By the way, if you need a mentor or just some guidance, please feel free
>> to contact me at any time. I would be glad to help you with any issues
>> you may have and/or review your code.
>>
>> Bye,
>> Rouslan
>>
>>
> Sorry for the delayed reply I'm sending. I went through your above
> mentioned commits and observed how was it implemented. Now I realize that
> some of the previous work I did have optimization problems. I'll go through
> the list of functionality I have implemented and come up with a optimized
> solution for them. Thanks for the guidance you gave.

Glad I could be of help ;)

Rouslan




More information about the Developers mailing list