Show Changes Show Changes
Edit Edit
Print Print
Recent Changes Recent Changes
Subscriptions Subscriptions
Lost and Found Lost and Found
Find References Find References
Rename Rename
Administration Page Administration Page
Search

History

11/10/2008 6:34:28 AM
JohnDavidson
11/10/2008 6:34:02 AM
JohnDavidson
11/10/2008 6:32:37 AM
JohnDavidson
11/10/2008 6:32:11 AM
JohnDavidson
11/10/2008 6:31:15 AM
JohnDavidson
List all versions List all versions

RSS feed for the DevDiscuss namespace

WYSIWYG Editor Development
.
Summary
Start New Thread Collapse Sub Threads Open All Threads

Editor Specifications and Approach for development

Shankar - 72.231.175.43 Saturday, November 01, 20083:55:12 PM

This thread is to start discussion on the specifications for the editor. I would be one of the persons interested in developing this feature and I request the community to guide us through the development process.

At this point in time, I am quoting from the existing specs:

"Implement basic wysiwyg editor functions including:

font type and size selection

font style attributes - bold, italics, underline, superscript, subscript, preformatted

link creation

ordered and unordered lists

tab indents and outdents

justification - left, right and centered"

I am hoping that in this thread we can discuss and add/remove/modify these features if required.

Regarding implementation, please pour in your thoughts about AJAX / Silverlight based implementation. Just a note: Silverlight development in VS2005 seems to introduce some complexity: http://weblogs.asp.net/mschwarz/archive/2007/06/04/silverlight-with-visual-studio-net-2005.aspx

Reply To This

Development Options

FLWCOM-jwdavidson Saturday, November 01, 20084:56:17 PM

There are 4 possible architectural options for development of an editor:

Each of these options can be developed in one of 3 ways:

The options for development tool are either VS2005 or VS2008.

If the solution is to be developed as being integrated directly with FlexWiki Core then it must be developed in VS2005 for compatibility reasons.

If the solution is implemented as a plugin or standalone then it can be developed in either VS2005 or VS2008. Any solution using AJAX or Silverlight should only be developed in VS2008 as the support for such development in VS2005 is impaired. If the standalone solution using a WPF application is chosen, then it also should be developed in VS2008.

Does this analysis seem reasonable?

Reply To This

Development Options

FLWCOM-jwdavidson Sunday, November 02, 20086:43:47 AM

On further reflection, development of this new functionality should be in VS2008 as the real decision is whether to use Silverlight 2 or AJAX.

nikhilk.net has a cogent examination of the various options.

ScottGu's Silverlight 2 Released has a ton of information including links to an updated 8 part tutorial on the new features in Silverlight 2.

One of the advantages of working with an open source project, is that developers can chose what and how they wish to work. It can be maddening from a project management perspective, much like trying to herd cats.

The bottom line is that you can develop using whichever tools you prefer and using the technologies that interest you. Please let us know which you will use though as at least I will set up a computer to give you help as you need it.

Reply To This

Development Options

Anonymous - 72.231.175.43 Monday, November 03, 20088:48:20 PM

After reading your analysis in the previous post, we came to the same conclusion, that VS2008 is a given, and we just need to decide on AJAX vs SilverLight. We will zero in on this tomorrow after some brainstorming.

Reply To This

Development Options

Shankar - 72.231.175.43 Monday, November 03, 20088:49:20 PM

The above post was by me. How do I create a user account here?

Reply To This

flexwiki.com Authentication

jwdavidson - 66.78.112.151 Tuesday, November 04, 20084:31:45 AM

The flexwiki.com site has been an open site without requirements for accounts except for system administration, nearly all of which is done by remote connection.

The system administration of the server requires Windows authentication. It is not desirable to have web users of flexwiki.com using Windows authentication, as this would give too much privilege.

I need to run a trial to see how well the SQL Server membership provider coexists with the Windows authentication, where SQL is used for everything but the administration directory, which would use Windows authentication.

Also there is the management overhead of looking after the SQL Server membership provider. That is one of the reasons why I was looking at implementing the Windows Live provider.

I will conduct the trial on my web site at http://ods.dyndns.org/FlexWiki/default.aspx where I have the SQL Server provider in place, but will need to add the Windows authentication for the admin directory. I should be done the testing later today.

Reply To This

flexwiki.com Authentication

FLWCOM-jwdavidson Tuesday, November 04, 20085:02:49 AM

It is not possible to configure FlexWiki to use Windows for administration and Forms for normal login at the same time. I thought it might be possible to run the admin directory as a separate application, but this will not work as the admin function depends on files in the root of the amin web application.

It would be possible to use to web.config files, but the flexwiki.config file would have to be moved to the admin directory.

I will investigate implementation of the the SQL Server Membership and Role providers on flexwiki.com. It is not difficult to get them running, but it has got a management overhead.

The authentication mechanism has major implications for the implementation of a WYSIWYG Editor as it is not possible to properly secure a web service without some ofrm of authentication.

Reply To This

Creating User Account

JohnDavidson Thursday, November 06, 20089:43:55 AM

I have set up the AspNetSqlMembership Provider using Sql 2008 Express.

You can create an account by clicking the login link in the Right Border at the top in the Welcome area. That will open the login.aspx page where you should choose Register as a new User. Provide the necessary details including a security question and answer and select a password that has at least 7 charaters and a minimum of one nonalphanumeric character (punctuation). The password and security response values are hashed and unreadable.

Reply To This

Creating User Account

shankar Saturday, November 08, 20088:03:41 AM

Thats great. Now I am able to create an account.

Reply To This

Development Options

shankar Saturday, November 08, 20088:05:33 AM

Silverlight it is. We have set up visual studio 2008 and have installed silverlight to start working on editor.

Reply To This

Handshake between editor and flexwikicore

Shankar - 72.231.175.43 Saturday, November 08, 20088:43:02 AM

Starting a new thread just to discuss and finalize on how we would have the editor talking to the flexwikicore. It would be ideal to have Editor code as a project integrated into the FlexWikiCore solution. However, if we intend to integrate that way and use the solution as a whole, then we would be forced to convert our FlexWikiCore solution to VS2008 format, breaking the backward compat with VS2005.

Solutions:

1. Have the editor as a seperate solution created in VS2008 and the application integration will be just by page navigation

2. Go for solution-level conversion of flexwikicore to VS2008, retaining its framework target of .net 2.0

3. Go for full conversion of flexwikicore to .net 3.5

I lean towards the first approach since it is straightforward and least impact. Let us discuss further here to see which is the best option for the community.

Reply To This

Handshake between editor and flexwikicore

Anonymous - 72.231.175.43 Saturday, November 08, 20089:11:13 AM

I should have specifically mentioned that we need to reference flexwikicore dlls in the editor solution, if we go by approach 1. we are yet to analyze whether that is feasible and how complex would be to identify and reference the specific dlls that enable the content save mechanism.

Reply To This

Handshake between editor and flexwikicore

shankar Saturday, November 08, 200810:03:29 AM

I am trying to kind of phrase the drive behind having a content editor, in hope that that would drive how the editor should be constructed and how it will talk to the rest of the application:

"We need a WYSIWYG editor for:

1. users who are not comfortable with using the wiki specific editing keywords (keyletters?) to construct their content

2. Rapid and intuitive development of content

3. Rich and usable interface for comfortable development of content"

Please do let me know if this should be the focus of the editor development.

Assuming the above focus, a thought at the top of my mind is to see if the editor can use the flexwiki webservices for adding content to the wiki system. At the outset, I see that we do have SetTextForTopic webmethod to and a set of get methods to interact with the wiki. I am still looking into the capabilities of the web services suite.

I request the community to throw in your ideas in this regard. I am looking into the possibility of web services since that would make approach 1 look more attractive, without the requirements of referencing dlls in an ad hoc manner.

Reply To This

Handshake between editor and flexwikicore

JohnDavidson Saturday, November 08, 200810:58:07 AM

The WebService is what drives the input form for this forum. You can see it in the MessagePosst.aspx.cs at the DoSave method.

Connecting to the FlexWikiCore using an external project is what is termed a PlugIn. This is normally used to extend WikiTalk functionality. See PlugInOverview and HowToCreateAPlugIn. his may not be exactly what you need though.

Also you maywant to look at the NewParser implementation, specifically the WomDocument class that exposes the structure of a wiki text as an xml document. The NewParser uses this xml document and an xslt definition to output topics with the property DisplayUsingNewParser set to true. This structure may be very useful for a Silverlight based editor.

Reply To This

Editor - UI Design Discussions

shankar - 72.231.175.43 Saturday, November 08, 20087:28:31 PM

Starting this thread to discuss any UI design clarifications regarding the editor.

I am starting with the notion that the UI will look similar to usual rich text editors with primarily a toolbar and a text area. 'Coolness' factor to be primarily induced by silverlight controls.

I am assuming usage of images for the toolbar icons. I have seen a good GPLv2.0 collection of icons at http://commons.wikimedia.org/wiki/Tango_icon. Is it fine to use them for the editor? Its usage will necessitate us carrying the original GPLv2.0 license and warranty information, I gather. Is there any other ramifications that we need to be aware of? I request the community's comments on the same.

Reply To This

Editor - UI Design Discussions

shankar - 72.231.175.43 Saturday, November 08, 20087:33:32 PM

Sorry, the license is "Creative Commons Attribution Share-Alike license"

Reply To This

Editor - Licensing for Components Used

JohnDavidson Saturday, November 08, 20087:58:15 PM

The FlexWikiLicense is the Common Public License. This license is not compatible with the GPL, but is okay with the Creative Commons Attribution Share-Alike license.

We have also used the Silk icon set from famfamfam software which is an attribution license also.

The Tango project icons look good though, very Web 2.0 ish

Reply To This

Editor - Licensing for Components Used

Anonymous - 72.231.175.43 Saturday, November 08, 20088:52:18 PM

famfamfam icons look good too. 16*16. I will do an initial cut of the UI in silverlight with the tango icons and famfamfam icons and try to give a screenprint or if possible, host it somewhere and give a link for us to decide.

Reply To This

Hosting Editor Project

JohnDavidson Sunday, November 09, 20087:39:49 AM

You can put the project on my server using an existing Application on IIS7 which current houses:

http://ods.dyndns.org/FlexWikiNew/default.aspx/OdsWiki/HomePage.html

All of the content can be overwritten or whatever. I can bring the FlexWiki version up to the current version if you need it.

The way I would give you access is via Windows Live Mesh. All you will need is Windows Live account. Then I will give that account access to a Live Mesh folder that you can access via http://www.mesh.com This folder allows transfers of up to 5 GB at a time. the mesh infrastructure also allows you connect directly to the server via a remote desktop connection. For this I will establish a Windows Account for you that you can login directly to the server.

You will not be able to change the name of the Application from FlexWikiNew as that is what is configured in my firewall.

The server has VS2008 SP1 installed as well.

Does a configuration like this meet your hosting requirements?

Reply To This

Hosting Editor Project

shankar - 128.113.248.157 Monday, November 10, 20081:37:09 PM

That's great John! I would pass on our windows live ids by mail to you.

If it is not a lot of trouble, please do bring up the latest version of FlexWiki in the server.

Reply To This

Hosting Editor Project

shankar - 72.231.175.43 Tuesday, November 25, 200810:40:06 PM

I attempted to use LiveMesh. When I log in, I see the FlexWikiNew folder on my 'Live Desktop'. But, I am not sure how to do 'Live Remote Desktop' to the server, since the server machine does not appear as a device in my devices page.

I am able to create folders and upload files, but without having access through Remote Desktop, I am not able to configure my code as an application in the server.

Could you please tell me how I can use LiveMesh in this context?

Reply To This

Editor implementation - Options and choice to be made

shankar - 72.231.175.43 Saturday, November 15, 200810:07:04 AM

Starting this thread to discuss the options that I have seen/experimented till now:

1. Plain vanilla option: Use good old iframes/javascript method like many rich text box implementations already do. Nothing silverlight about it.

2. Full-blown implementation option: Implementing a user control from ground up to handle the rich text options the way we want it to be.

3. Lesser compatibility option: IE6, IE7 and FF3 support contenteditable property that will allow a div to be editable. We can build our capabilities around it. If we need to give support to FF2 etc, we need to gracefully degrade to probably option 1 for them.

I request the community to give your thoughts on this and of any other option that I might have missed out.

Reply To This

Editor implementation - Options and choice to be made

shankar - 72.231.175.43 Saturday, November 15, 200810:10:41 AM

SilverLight does not seem to include a rich text control, unlike WPF. So, another theoritical option, though not web, is WPF if we need something with lesser maintenance effort.

I have not yet come across a silverlight specific capability that would make the rich text implementation easier.

Reply To This

Editor implementation - Options and choice to be made

JohnDavidson Saturday, November 15, 20082:29:52 PM

Option 3 - to use the content editable feature of specific browsers is not really an acceptable option. The feature set of FlexWiki needs to remain as browser agnostic as possible to prevent criticism.

That would leave Option 1 or 2 as still being viable.

Silverlight 2 rishc text editor is a start at a Silverlight control that may do some of the work you want to accomplish. There are no issues with the license of this software.

Otherwise Option 1, running in an AJAX type of implementation may be the least effort with the greatest gain.

Reply To This

Editor implementation - Options and choice to be made

Raam Kumar Ganesan - 72.231.175.43 Sunday, November 16, 20089:34:24 PM

I looked at Silverlight 2 rishc text editor. Seems to be a viable option. I think we could get some part of our work done using this lead to get started with.

Reply To This

Editor implementation - Options and choice to be made

shankar - 72.231.175.43 Tuesday, November 25, 20082:25:30 AM

Update on the development:

1. We created a UI with editor-like toolbar using the images from wikimedia commons (the alternative UI with the other image option is yet to be implemented). UI is simplistic at this point and there is a lot of scope for improvement.

2. We consumed the RichTextEdit control from the RichTextEdit2.0 project of codeplex to the UI solution. with some modifications to that code to handle a few calls like undo, redo, right justify and cut. We tapped into the hooks available in the control to define our editing events.

3. I tried uploading into ANDROMEDA using Live Mesh and am facing some problems. Will put up a seperate post on the same.

4. Uploaded the application into silverlight.live.com. http://silverlight.services.live.com/invoke/84800/WysiwygEditor/iframe.html

Rendering and behavior of the RTE control is the same as the one in codeplex. We are yet to implement the following functionalities:

1. ordered lists

2. unordered lists

3. links in a proper manner

We also have lots of areas for improvement.

Please have a look at the implementation till now and provide your comments. We are yet to hook the editor with FlexWiki.

Reply To This

Editor implementation - Updates

shankar - 72.231.155.180 Thursday, November 27, 20088:13:20 PM

Updated application loaded into http://silverlight.services.live.com/invoke/84800/WysiwygEditor/iframe.html

Newly added features are:

1. Hyperlink functionality

2. Save functionality - not fully complete

Save functionality has been implemented using EditService web service. The topic and namespace names are hardcoded now. I am working on a dialog box to get them dynamically from user. We have tested save using local FlexWiki instance. To invoke the web service from silverlight application, we need the crossdomain.xml file deployed on the web server with the following content:

<cross-domain-policy>

  <allow-http-request-headers-from domain="*" headers="*"/>

</cross-domain-policy>

The sample application is now pointing to www.flexwiki.com's edit web service. So, if the crossdomain.xml is deployed in the server, we can test save functionality on the server itself.

Reply To This

How can I deploy a User Forum like this?

James - 72.250.221.183 Thursday, November 20, 20088:21:25 PM

We have a flexwiki deployed on a closed LAN, with about 50 users. Would it be possible for me to deploy a user forum like this with that wiki? What do I need to do? Any help would be appreciated!

Thanks,

James

Reply To This

How can I deploy a User Forum like this?

James - 72.250.221.183 Thursday, November 20, 20088:28:30 PM

I'm not sure why my post went into the WYSIWYG section. I thought I started it in the General forum. Sorry.

James

Reply To This

BugTracker for the WysiwygEditor

Anonymous - 72.231.175.43 Tuesday, November 25, 200810:41:43 PM

What would be the best option for tracking bugs and pending features for WysiwygEditor? - SourceForge or the BugTracker page in this web site?

Reply To This

BugTracker for the WysiwygEditor

shankar - 72.231.155.180 Tuesday, November 25, 200811:30:36 PM

Sorry, the above message was from me.

- Shankar

Reply To This

 

Not logged in. Log in

A forum area to discuss topics relevant to ongoing FlexWiki development

This is FlexWiki, an open source wiki engine.

Change Style

Recent Topics