Globalization of MVC 3 application - asp.net-mvc-4

Currently we have an application in Arabic, with all the data(nearly 6k reords, including navigation menu name,labels, error messages) are reading from resource.xml file and hard code text direction(rtl) in css files.
We are planning to have the same application to be made available in English and Arabic respectively.
I saw few of the blogs which provides sample application reading data from either database or resx file or having different views for each language.
I need your suggestion what is best possible way to have an application in english and arabic. What are the measures that are needed to be taken care of?

Related

workflow for managing help content written by external co-workers

We develop a WPF application that has something like a context sensitive help. The content of the help pages is currently written as word documents by external colleagues (say biologists) and then translated to xaml code by developers. This process is tedious and error prone because the biologists don't see the xaml code and the word documents can't easily be diffed and tracked in a version control system.
So we'd like to improve this process and maintain the content in a single place, in a format that
is simple to edit (preferrably with a wysiwyg editor),
is stored in a simple ascii format (for diffing / version control) and
can be included automatically as a resource in our C# application.
The solution could be a framework, an external tool or any other idea.
The format should support simple html rendering such as bold and italic, superscripts, etc and images.
I suggest to use Flow Documents:
It is a WPF technology so you will use the well known tool.
Flow documents can be edited in RichTextBox WPF control. You can access an edited flow document via RichTextBox.Document property. Then you can save it into XAML file with XamlWriter. Taking all this thibngs into account you can easily and quickly create a simple application for your external colleagues.
Finally, you can load saved XAML files into FlowDocumentReader control in order to display them. It is described here.
I'm not only sure if flow documents can be embedded in resources. If it is not possible, I think that help files can be distributed separately. It doesn't seem to be a big problem.
Alternatively instead of flow documents you can use RTF format. RichTextBox can be also used to edit this kind of documents.

windows phone - iterating through .resx

I am in the process of learning how to write apps for Windows Phone 7/8. I am working on a simple cookbook application. At first, I hard-coded all the values, but I then moved the data to .resx in order to localize the recipes. Now, what if I wanted to implement a search function? I don't think iterating through .resx is the desired approach. Can I use some sort of a database? Can I still localize that database?
I can only assume that you're talking about localizing an application. If that's the case, start with the official guidelines on building a localized application for Windows Phone.
You might also be interested in: Localization Best Practices for Windows Phone.

WinRT & XAML - Resource Files but for a language not localization?

Roughly, reading up on localization and Visual Studio 2012 C# and XAML for a windows store app pointed me here:
http://msdn.microsoft.com/en-us/library/windows/apps/xaml/Hh965329.aspx
This shows how to create a resource file for, say, en-US and fr-FR, which are US English and France French. Shows you how to use the the resource loader to load it. That's good and using the UID in Xaml page to load it automatically.
However, my confusion comes with, say, I want to create a Spanish resource file. But I want to have it used for any spanish language localization. If I set it up for mx-ES, what happens if the localization is pe-Es for Peruvian Spanish or es-ES for Spain Spanish. Basically, i am a little confused on how I make 1 resource apply to all English or all French or all Spanish without it being bound by the country and without having to make a seperate resource file for every country/language combination.
I thought this would be an easy question, but I haven't seen where anyone has asked it yet.
Use just the language code for the culture so ES instead of es-ES.

Share a "deep link" from a Windows 8/WinRT application

I have searched using many different terms and phrases, and waded through many pages of results, but I have (remarkably) not seen anyone else addressing, even asking, about, this issue. So here goes...
Ultimate Goal: Allow a user viewing a content-based page (may contain both text and images) within a Windows Store app to share that content with someone else.
Description
I am working on taking a fair amount of content and making it available for browsing/navigating as a Windows 8/WinRT/Windows Store (we need a consistent name here) application. One of the desired features is to take advantage of the Share Charm, such that someone viewing a page could share that page with someone else.
The ideal behavior is for the application to implement the Share Source contract which would share an email message that contained some explanatory text, a link to get the app from the Windows Store, and a "deep link" into the shared page in the application.
Solutions Considered
We had originally looked at just generating a PDF representation of the page, but there are very few external libraries that would work under WinRT, and having to include externally licensed code would be problematic as well. Writing our own PDF generation code would out of scope.
We have also considered generating a Word document or PowerPoint slide using OpenXML, but again, we run up against the limitaions of WinRT. In this case, it is highly unlikely the OpenXML SDK is useable in a WinRT application.
Another thought was to pre-generate all of the pages as .pdf files, store them as resources, and when the Share Charm is invoked, share the .pdf file associated with the current page. The problem here is the application will have at least 150 content pages, and depending on how we break the content down, up to over 600. This would likely cause serious bloat.
Where We Are At
Thus we have come to sharing URIs. From what I can tell, though, the "deep linking" feature is only intended for use on Secondary Tiles tied to your application. Another avenue I considered was registering a protocol like, "my-special-app:" with the OS and having it fire up the application but that would require HKCR registry access, which is outside the WinRT sandbox.
If it matters, we are leaning towards an HTML/JS application, rather than XAML/C#, because the converted content will all be in HTML and the WebView control in WinRT is fairly limited. This decision is not yet final, though.
Conclusion
So, is this possible, and if so, how would it be done or where can I find documentation on it?
Thanks,
Dave Parker

Best practice for Java EE application development using extjs and Sencha Architect

I am a newbie to extjs and kind of new to javascript world also. I have developed applications in jsp/servlet, JSF etc.
We are planning to use extjs along with Sencha Architect to develop UIs for our application.
Being new I have several questions for which I am searching answers
Q1. How should we use Sencha Architect in multi developer environment in terms of versioning. Shall we checkin the Architect project into svn and ask each developer to work on same project.
Q2. What should be the structure of Sencha Architect project (Basically how to make sure each developer is working on his/her individual module without affecting others component).
Is there any best practice for this.
Q3. What is the best practice for developing an application which contains several pages along with navigation. Should we create a single html file (with lot of javascript to modify the body) or should we have multiple html?
yes, it should certainly be in source control. you will want developer-specific settings to not be in source control however.
the best way is to create an application "shell" with menu bars, and load in modules/plugins and have them register with the application, adding their own menus etc.
definitely a single page application. security remains on the server though (for example in your REST API). security is irrelevant on the client as they have control over source code. you should just hide functionality that a user should not use.
How to load different views into viewport?