![]() |
Show Changes |
![]() |
Edit |
![]() |
|
![]() |
Recent Changes |
![]() |
Subscriptions |
![]() |
Lost and Found |
![]() |
Find References |
![]() |
Rename |
![]() |
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 |
| Start New Thread | Collapse Sub Threads | Open All Threads |
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 ThisFLWCOM-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 ThisFLWCOM-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 ThisAnonymous - 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 ThisShankar - 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 Thisjwdavidson - 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 ThisFLWCOM-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 ThisJohnDavidson 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 Thisshankar Saturday, November 08, 20088:03:41 AM
Thats great. Now I am able to create an account.
Reply To Thisshankar 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 ThisShankar - 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 ThisAnonymous - 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 Thisshankar 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 ThisJohnDavidson 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 Thisshankar - 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 Thisshankar - 72.231.175.43 Saturday, November 08, 20087:33:32 PM
Sorry, the license is "Creative Commons Attribution Share-Alike license"
Reply To ThisJohnDavidson 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 ThisAnonymous - 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 ThisJohnDavidson 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 Thisshankar - 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 Thisshankar - 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 Thisshankar - 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 Thisshankar - 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 ThisJohnDavidson 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 ThisRaam 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 Thisshankar - 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 Thisshankar - 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 ThisJames - 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 ThisJames - 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 ThisAnonymous - 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 Thisshankar - 72.231.155.180 Tuesday, November 25, 200811:30:36 PM
Sorry, the above message was from me.
- Shankar
Reply To This