On 24 Mei 2011, at 18:56, Piotr Przybylski <piotr.prz(a)gmail.com> wrote:
> 2011/5/24 Aris Feryanto <aris_feryanto(a)yahoo.com>:
> Remember that when storing data per table you will have to set some
> upper limit, or you may have data in which half of the tables don't
> exist. Limiting eg. to 100 takes care of dealing with removed tables -
> after some time you will just "forget" about them (they get pushed out
> of saved table list).
Thank you for the good suggestion, Piotr. I will limit the records if I store them per table.
as of now, the master branch contains CodeMirror 2  editor which is
being used for SQL editing. Please test and report any failures with it.
The MySQL mode was written by me and keywords list is based on our SQL
parser, so if something is missing there, most likely our SQL parser
misses it as well :-).
Michal Čihař | http://cihar.com | http://blog.cihar.com
I've just pushed my commits for show/hide column feature. If you have some time, please give it a try at  and let me know if you have any comment or suggestion.
When you are testing, please note that the feature still lack of some things:
- column visibility list drop-down arrows are shown in "too many" places when display mode = vertical AND repeatCells = small number
- the hide (small X) button is sometimes annoying, especially when we want to sort a small column (e.g., usually ID). I've tried to resize all columns using jQuery to properly display the "hide" button next to the column label. But, unfortunately, it is quite slow. Any other suggestion? Should we remove the "hide" button?
from your week 5 report, it seems that some of the code has not been
pushed. Your repo's last push is:
Author: Ammar Yasir <ammaryasir.88(a)gmail.com>
Date: Tue Jun 21 05:04:00 2011 +0530
On Sat, Jun 4, 2011 at 9:57 PM, Ammar Yasir <ammaryasir.88(a)gmail.com> wrote:
> On Wed, Jun 1, 2011 at 7:47 PM, Madhura Jayaratne <madhura.cj(a)gmail.com>wrote:
>> On Wed, Jun 1, 2011 at 5:30 PM, Marc Delisle <marc(a)infomarc.info> wrote:
>>> Madhura Jayaratne a écrit :
>>> > On Wed, Jun 1, 2011 at 4:30 PM, Madhura Jayaratne <
>>> > <mailto:firstname.lastname@example.org>> wrote:
>>> > On Wed, Jun 1, 2011 at 2:10 AM, Ammar Yasir <
>>> > <mailto:email@example.com>> wrote:
>>> > On Wed, Jun 1, 2011 at 1:55 AM, Marc Delisle <
>>> > <mailto:firstname.lastname@example.org>> wrote:
>>> > Ammar Yasir a écrit :
>>> > >
>>> > >
>>> > > On Tue, May 31, 2011 at 10:14 PM, Marc Delisle
>>> > <marc(a)infomarc.info <mailto:email@example.com>
>>> > > <mailto:firstname.lastname@example.org <mailto:email@example.com
>>> > wrote:
>>> > >
>>> > > Ammar Yasir a écrit :
>>> > >
>>> > > > Parts refactored are:
>>> > > > - Setting titles (titles['Browse']])
>>> > > > - getting fields list (getting column details)
>>> > > > - setting sub-tabs (Table search and Zoom search)
>>> > > > - setting table header of QBE display
>>> > > > - displaying foreign data
>>> > > > - search criteria input elements (HTML content
>>> > generation for the
>>> > > input
>>> > > > elements)
>>> > >
>>> > > Very good!
>>> > >
>>> > > Another trick you can use: when a function returns
>>> > array, like your
>>> > > PMA_tbl_getFields(), to fill all the returned values
>>> > in one statement
>>> > > you can use this syntax:
>>> > >
>>> > > list($fields_list, $fields_type, $fields_collation,
>>> > $fields_null) =
>>> > > PMA_tbl_getFields($table,$db);
>>> > >
>>> > >
>>> > > I made some more changes.
>>> > OK. There are still a few tab characters (found some in
>>> > libraries/tbl_select.lib.php).
>>> > > Should I proceed now to try the charting libraries?
>>> > Yes but in your proposal you wrote that you preferred
>>> > jQuery-SVG so I
>>> > assume you'll try this one first?
>>> > I'll try SVG first. I'm following what others have to say about
>>> > SVG, Madhura is using it for his GIS visualization. Tyron
>>> > proposed real-time charting but I don't think it'll be of much
>>> > help in our case.
>>> > Hi Ammar,
>>> > I'm not sure what exactly your requirement is. But pls have a look
>>> > at the visualization of data at  by clicking on the 'Visualize
>>> > GIS data' link in the 'Query results operations' section towards
>>> > bottom of the page. Try out zooming by double clicking and panning
>>> > by dragging. I believe you are looking for something like this for
>>> > your zoom search feature.
>>> I have issues operating panning and zooming. Here is the scenario:
>>> 1. Browse world_cities and click Visualize GIS data
>>> 2. Click-drag: pans OK
>>> 3. Double-click: this is a zoom out, I guess
>>> 4. Click-drag: no panning
>>> 5. Click "zoom out": data points are enlarging, isn't this a zoom-in?
>> This is a Firefox compatibility problem. Resolved and pushed to the repo.
>> Demo will take some time to upgrade to the new version. Meanwhile if you
>> have Chrome, you can still experience what it's suppose to do.
>> Thanks and Regards,
>> Madhura Jayaratne
> I was looking up jQuery-SVG and SVG past two days. There has been a
> discussion going on in the list about whether to include a different
> plotting library than existing(pChart). For now, instead of including
> another plotting library, I've developed a prototype that creates the plot
> using just SVG. I'll push it to my repo sometime later today.
I've pushed my work. The basic plot functionality is implemented along with
classes for the same. Currently it works only for numeric fields, I'll add
support for other data types after some testing. You can try scenarios in
'sakila' database and search 'films' or 'film_actor' table.
>> Simplify data backup and recovery for your virtual environment with
>> Installation's a snap, and flexible recovery options mean your data is
>> secure and there when you need it. Data protection magic?
>> Nope - It's vRanger. Get your free trial download today.
>> Phpmyadmin-devel mailing list
I apologize for my directness but the newly implemented 'Create table'
Dialog has an awful usability. Especially once you've added 2 more
The idea of AJAXifying pma is to increase the usability, but with a
small dialog where I have to scroll horizontally and vertically
several time to create the table, it will take me way way longer
compared to the old create-table interface.
I don't know if its just me, but I see so many things gone wrong with
Some things I would change globally (taking the create table dialog as
- Decrease the massive amounts of padding/margin of the jquery ui dialogs.
- I don't need a 40 pixel high title telling me that I'm currently
creating a table.
- Did you notice that there's is a 900 x 60 pixel (!) area that
only performs a single function: Containing the cancel button. This
should be either drastically reduced in size or removed altogether
(and put the cancel button inside the content)
- Decrease those massive margins and paddings around input fields.
Those should be made big only where it actually improves the
usability/readability. I would reduce the margin/padding from 6/4 to
And for the create table dialog:
- Display always in horizontal mode! Hardly any tables contain just 2 columns.
- Start always with 4 fields
- Bug: You can actually open the dialog several times, cause the
enum/set editor to be in the background
- Make all selects and text inputs way shorter. I'd reduce them by
~30% (selects as well!). The length/value field I would reduce by
50-70% or so.
- The null and A_I checkbox waste big amounts of space. I would put
them together in the form of " [ ] Null [ ] A_I " in a column called
- Remove the "Table name:" title, instead put 'Table name' into the
input field that disappears once the user focuses it
- Instead of "Add x tables [Go]" which does it's own ajax request I
would place a link "Add column" that adds one single column, but
therefore adds it immediately (no ajax here!), allowing users to just
spam click the link if they need a lot. Or alternatively use a select
list that contains the numbers from 1 to 10 which adds columns
immediately on the onchange event.
- Display the input field for the default value only after "As
defined:" is selected, and also focus it automatically once its
selected so the user can type immediately
- Why do we have these footnotes at the bottom of the dialog when we
got PMA_showHint()? (Forgot to initialize them in js?)
- For all the form fields below the columns: Remove all the gradient
backgrounds on the titles. What are they there for?
- In whatever way, put the Save and Cancel button side by side
- The enum/set editor I find so bad, I don't even know how you could
- If my table would be having 3 enums, I get 3 times this sentenced
thrown onto my screen causing the columns table to get even bigger.
- The dialog itself has a completely different style than everything
else in PMA and really badly implemented. Just some bugs:
- Values for column "" - wheres the column name?
- Why is "Go" a button and "Cancel" a link?
- Single quotes are not escaped (put a \' into the value field)
- Breaks if a user accidently enters a space
- The background is grayed out, yet you can still interact with it
(e.g. select text)
- You can actually scroll away the content of the dialog by
selecting text downwards
- Visual bug: One can see all input fields disappear if you press ok/cancel
- Why not just a simple textfield where you let the user write one
value per line? I would build the enum/set like this:
- if set/enum is selected and the user focuses on the input field,
pop out a bigger textarea (that is placed like a datepicker)
- let the user write one element per line
- extend the textarea row height with every line written so the
user doesn't have to scroll. (up to a certain limit of course, like
15-20 lines - also it should not force the to scroll the page)
- with every line written or on lost focus, automatically parse
the text and update the value field correctly formatted
Now lets say my enum has 5 elements. With the current enum/set editor
that would require me to perform 13 mouse clicks and 5 interruptions
(where my hands need to switch between mouse and keyboard), whereas
with a textarea that pops up like a datepicker requires 2 mouse clicks
and 0 interruptions. Why build things so complicated? ;-)
Sorry again if I sounded too unpolite :<
it works well so far!
- As the default data label, use the display field if it exists (from
libraries/relation.lib.php, PMA_getDisplayField() )
- For the title, instead of "Scatter Plot", give some indications (how
to zoom, how to click, etc) or give a link to get such indications
- Is it possible to enlarge the size of the working zone? ideally, to
drag it by one of its corners?
- You seem to prefetch the whole table and I'm concerned about response
time and memory issues for big tables (try it with the payment table and
no data restriction). When hovering over a dot, maybe fetch the rows one
by one with Ajax? Or use Ajax if there are more than a certain number of
- Clicking on a point shows the whole row; is it possible to show a
pencil icon which would permit to bring another panel to edit the row?
- Still thinking about a panning mechanism?
- Any possibility of this feature for multi-tables?
Which functions were chosen to be in these two arrays and for what
reasons? Are these the functions that look like most used, or should
these lists contain everything that can be used on Insert tab
(functions that can take string arguments)?
In the table view of a database it would be awesome if you could
select multiple tables with SHIFT and CTRL like you can in classical
list. Just had a case here where I needed to drop 18 tables requiring
me to click 18 times.