Some time ago the plan was to do lots of work for 2.7 with regards to tables. Due to the limitation of resources available, that milestone has been scratched and the main focus of the work is gonna be the 3.0 release.
Unfortunately for me and I guess for some other people that would mean a "lot" of time until the current problems with the tables are fixed.
Some examples of the kind of issues that I think that should be fixed:
http://dev.fckeditor.net/ticket/425 Table tags to support enhanced table design by class style
http://dev.fckeditor.net/ticket/1982 [IE7] Table context menu submenus doesn't appear properly.
http://dev.fckeditor.net/ticket/1865 Contextmenu in last row of a table with thead doesn't work
http://dev.fckeditor.net/ticket/2389 Merge Cells removes attributes from tr in table
http://dev.fckeditor.net/ticket/822 Add <th> tag support Fixed
http://sourceforge.net/tracker/index.ph ... tid=543655 make THEAD, TH and scope in tables. Fixed
http://dev.fckeditor.net/ticket/1803 Creating new columns doesn't handle <col> elements
also:
http://dev.fckeditor.net/ticket/636 CSS style dropdown to table and cell
http://dev.fckeditor.net/ticket/2472 Splitting <th> produces a <td> instead of a second <th>
I'm not interested in working to bring support for things that are better placed in the style system, so don't ask me to code or review anything related to colors of background-colors. Instead, my focus would be to make sure that the tables are useful for everybody, that they can pass any kind of validation test (if used properly) and that there are no errors when the editor finds out a table that has been created with those advanced characteristics.
The main point of this post is to call out anyone interested in those bugs, to give me a hand, testing all kind of tables in four browsers, with different versions and OS it's very hard, it takes a lot of time, and if you want those bugs to be fixed, they need to be properly tested, we must be sure that each ticket is fixed without introducing new bugs. Surely new tickets might get filed about things that previously no one did test or maybe they were just impossible, but if we work together to test, verify the patches, (you can even provide your own patches!), then we can hope to see a not too future release of FCKeditor with those issues fixed.
If you are interested just reply here and I'll keep this post updated about the tickets as I work on them.
Sat, 08/02/2008 - 16:24
#1
Re: Improving the tables
I've updated and fixed the patch to create THead in the tables. You can check the code in http://dev.fckeditor.net/ticket/2430#comment:1
As I said, if anyone is interested in making this support a reality, this is the time to give a hand and test the patch, check that it works as expected, and that it doesn't have any problem. If it is successfully tested then it will be much easier to ask for a review of the code by Fred or Martin.
Re: Improving the tables
I am interested in the table dialog with the THEAD options and also the possibility to enter the tables CLASS property through the table dialog.
As I am not familiar with the way you publish the patches for fck_table.html can you please send me this file in email to info@fit2page.nl?
I will review it for FF, IE6, IE 7 and Safari for you.
Thanks alot in advance!
BR,
Marc
Re: Improving the tables
Hi Marc
Thanks for your offer.
I think that using the SVN version is quite easy and it will be better for you (or anyone else interested) to set it up as that means that you can easily apply the patches yourself. For example, the changes for the thead are mostly some modifications of the table dialog, but it also includes a new function in the internal API, so in order to get that changes I would need to also provide the packaged version again.
Try to follow the steps outlined here: http://dev.fckeditor.net/wiki/SVN_Basics
First, download and install TortoiseSVN, (you'll need to reboot to finish the setup)
Then create a checkout folder
This folder is similar to the one that you can download with any FCKeditor version, but it does include some extra files and it's mean to make debugging easier. Don't deploy it to your users because the code isn't compressed and it's much slower than the final version.
Verify that this version works normally.
Now you need the patch that you want to test. Let's see how to get it with this one.
Go to the ticket, and search for the last attachment proposed as patch: 2430.patch, you can easily check the changes of the patch there, and at the bottom there's a link: download in original format.
With that link you can get the 2430.patch file, save it to disk, and then use TortoiseSVN to apply the patch to your checkout folder.
Now you can start testing anything that you want.verify that the behavior is correct, that there are no new bugs...
When you want to test another patch, you can "Revert" the changes to your local copy in the SVN context menu, or apply both patches, when the code is applied to the trunk you "Update" your local copy, and can keep on testing any other patch.
Please, tell me if you have a problem with any of these steps.
Regards.
Re: Improving the tables
I have the patch files here now, no probs.
I am going to test in different browsers this week.
When I want to update our production environment with the new .js is that simply a packed version of the original?
Marc
Re: Improving the tables
Re: Improving the tables
To make selection of the table class possible I added
document.getElementById('selClass').value = GetAttribute( table, 'class', '' ) ;
SetAttribute( table, 'class' , GetE('selClass').value ) ;
and a dropdown with classes available.
These classes are of course specific for our own CMS. Are you planning to implement this also?
Marc
Re: Improving the tables
That's http://dev.fckeditor.net/ticket/425 , so yes, I would like to add it. (but the logic isn't as simple as you write, in IE there's an automatic class added in order to show the borders)
Re: Improving the tables
When I switch to "Code" and back then I see the class applied to the table.
In FF and Safari everything works fine.
Are you planning a link to the <table> applicable classes in style.xml also?
When and how do you publish the patch to work with the table classes since I saw that ticket #425 is Confirmed added?
Re: Improving the tables
That's because in IE you must use .className, just like other dialogs.
I think that it's the best option, end users have a hard time remembering the class names that the designer choose.
I don't have infinite time to work on this, so work moves little by little, and it doesn't have sense to try to make lots of changes at a time, each bug should be fixed before I can start working on other features or there would be too many things to look at. If other people cooperate and help to fix the bugs then everything will move faster.
Re: Improving the tables
OK it works when I use FCKBrowserInfo.IsIE as a browser detector.
I really don't know how to establish a link to the style.xml so I am afraid I cannot help you there. Do you think you can easily explain to me or do you have a code example?
Thank you Alfonso
Re: Improving the tables
Hi Alfonso,
Where can I see to which location the released version is written?
I created a dir named ../../fckeditor.release/ but nothing is written to it...
Marc
Re: Improving the tables
About the styles, you can check the div container dialog, but remember that if you want to create a patch, it must work in all four browsers, including Opera, so I would suggest you to install it and add it to your tests.
Re: Improving the tables
Yeah I saw it; I have to install new virtual with Linux tomorrow...
I will check in Opera also, no prob.
Re: Improving the tables
No, you can install PHP in windows. I don't think that you can run the .bat file from Linux.
Re: Improving the tables
When I open the online FCKeditor demo version in Opera 9.51 I do not see context menu's on right mouse click. I cannot find this as a filed ticket. Am I missing something?
Marc
Re: Improving the tables
OK thank you.
Do you have a howto or a link. What about the chance that my IIS configuration on the machine is destroyed by the PHP installation?
Marc
Re: Improving the tables
I will jump in on this and try to help out as much as I can.
Re: Improving the tables
alfonsoml,
I was looking into http://dev.fckeditor.net/ticket/425 - Table tags to support enhanced table design by class style and it seemed like an easy option to include in the table properties dialog. I did get ID and class attributes to work with table dialog but then I ran into this -
Re: Improving the tables
I don't think that your IIS installation should be affected. Usually people want to install PHP in order to run it for webpages and they get troubles to make it work, I guess that if you skip that step you won't have any trouble.
Anyway, remember that you don't need PHP to test these changes, and that hopefully they will become a new version so you can grab that zip and deploy it.
Re: Improving the tables
Thanks.
It looks good to me in IE7, I guess that I need to remember where I did left that IE6 VM
Re: Improving the tables
Re: Improving the tables
Because CMS customers experience problems I want to deploy the Table dialog changes to our production environment as soon as possible. Since you made changes in fckdomtools.js I need to recompile the .js source to the packed ones. That's the reason I need the PHP on the machine.
Regards,
Marc
Re: Improving the tables
I have tested with IE6 and I didn't notice any problem with the summary field. I don't know what to do if I can't reproduce the problem...
Re: Improving the tables
Re: Improving the tables
Thanks for the patch, it looks mostly right. The change at the beginning of both files means that probably your editor isn't handling the UTF-8 marker correctly and it's removing it, not a big issue.
Anyway, I can see some issues: copying the attributes to an array and storing first the name and then the value looks strange. It would be better to copy all the attributes and values to an object.
Then the conversion to a string and then splitting it again seems useless.
I would try to use the CopyAttributes function defined in the fck_dialog_common.js (moving it to the domtools)
The main problem is that in order to fix other bugs (that are triggered more easily like the context-menu at last row) I think that the _CreateTableMap and _InstallTableMap might need several revisions, that are more important than this issue at hand. After all, a user can't set any attribute on a <tr>, but as I said, there are other things that seem that should be fixed first.
Re: Improving the tables
Re: Improving the tables
I tried replying to the ticket http://dev.fckeditor.net/ticket/2389 page but for some reason it won't allow me to. So posting it here
Re: Improving the tables
About the patch: you don't need to hurry. Create the patch and test it. Then rest for a day and tomorrow take a look at it again, verify that the code looks nice, that the names and descriptions are correct. Try new testcases and if everything is fine you can post it, but as I said previously this isn't an important bug to fix right now: in order to test it you need to go to source view, paste the code and then to see the results you need to go again to source view, it isn't easy to test, so it isn't strange that you might miss something in the bugfix.
Re: Improving the tables
Re: Improving the tables
With regard to the tables, one of the best way as I explained is to properly test the patches that are available (if they do exist) in the bugs, or any new patches that I or anyone else adds. Catching any problem as early as possible means that when a bug is reviewed has a high chance of being directly accepted, but if there are problems like it did happen with the thead patch that Martinkou did found and then some other issues that I've found in IE and Opera, means that the testing of the patch has failed.
I hoped that the community would help on this task because Frederico and Martinkou are focused on CKeditor 3, and I don't want to steal any time from them in order to add this patches to a new release of a version that it's almost in maintenance mode. I can develop in a private branch and deliver it only to my clients, it seems that some people likes to do it that way.