[Phpmyadmin-devel] Column reordering

Marc Delisle marc at infomarc.info
Fri Jun 10 14:28:05 CEST 2011


Aris Feryanto a écrit :
> 
> ----- Original Message -----
>> From: Marc Delisle <marc at infomarc.info>
>>
>> Aris Feryanto a écrit :
>>>  Hi Marc,
>>>
>>>  ----- Original Message -----
>>>>  From: Marc Delisle <marc at infomarc.info>
>>>>
>>>>  Aris Feryanto a écrit :
>>>>>  Hi all,
>>>>>
>>>>>  I pushed my work to git repo in [0]. My recent commits add
>>>>>  functionality to
>>>>  remember the column order, so that when we press next, prev, or
>>>>  anything that refresh the table, we will get same column order. The
>>>>  commits also fix some bugs and implement some previous suggestions.
>>>>  If you have some time, you may test the demo at [1]. Any comment or
>>>>  suggestion is really appreciated. :)
>>>>>  Here is the list of what I did:
>>>>>
>>>>>  - Remember column order in session or phpMyAdmin configuration
>>>>>  storage, if
>>>>  configured.
>>>>
>>>>  Aris, I had a little time to test today. I had a look at how you
>>>>  store the column order in pma_table_uiprefs. You are using column
>>>>  numbers. This gave me an idea for a possible bug which I tested and
>>>>  proved indeed a bug.
>>>>
>>>>  If a structure change occurs in the table (let's say I add a
>>>>  column, either after an existing column or at the end), display
>>>>  problems happen.
>>>>
>>>>  I also see Notice in ./libraries/display_tbl.lib.php#461 Undefined
>>>>  index: cf7e1a12c9f636989429f8e2d369eaa5
>>>>
>>>>  on a table on which I added a column.
>>>  Fixed. To solve the problem caused by changing table structure, I add
>>>  some checking of table creation time, so everytime a table is
>>>  modified, the column order will be reset (any better way?). Please
>>>  check it in my git repo or test in the demo server [0].
>> I wonder if the logic should handle the structure changes made outside 
>> of phpMyAdmin?
> 
> I've tested that the table creation time also gets updated when we make changes outside phpMyAdmin. In my test, I used MySQL command line to make some changes and can be detected from 'CREATE_TIME' info.
> 
>>>  In my last commit, I also fix a bug for "Remember table sorting". 
>> I
>>>  add checking whether the remembered sorted-column still exist in the
>>>  table.
>>>
>>>
>>>  [0] http://demo.phpmyadmin.net/gsoc-aris
>>>
>>>>>  - Add "Restore table" button to restore table order.
>>>>  We'll have to find a better name for this button... but it works
>>>>  well. Also I'm not sure about showing it greyed when columns are in
>>>>  original order.
>>>>
>>>
>>>  How about "Restore column" ? At first, I only set property 
>> "disabled"
>>>  for the button and expect it will be rendered differently from other
>>>  buttons. But, it just rendered similar with other buttons. So, I
>>>  greyed the button manually.
>> I suggest "Restore column order". I would prefer to make this button 
>> disappear completely when not appropriate.
> 
> 
> Done in my git.
>> I am also wondering how to "publicize" these two new features (how to 
>> make  more apparent that these are available).

Aris,
do you believe this feature is ready to be merged to the official tree?

-- 
Marc Delisle
http://infomarc.info




More information about the Developers mailing list