/* $Id: messageBundle.js,v 1.56 2011-12-21 11:39:08 lan Exp $ */
var resources = {
	/* Common section (prefix: common) */

	// Error messages
	commonErrorCannotConnect: "Connection to the server has failed. Please try again later. If the problem persists, please contact us at <a href='mailto:"+appInfo.adminMail+"'>"+appInfo.adminMail+"</a>",
	commonErrorNoData: "Unknown error during query: server returned no data. Please try again and contact us at <a href='mailto:"+appInfo.adminMail+"'>"+appInfo.adminMail+"</a> if problem still persists.",
	commonErrorQueryException: "Error during server query: {message}",
	commonErrorUnknownStatus: "Unknown error during query: server returned invalid status. Please try again and contact us at <a href='mailto:"+appInfo.adminMail+"'>"+appInfo.adminMail+"</a> if problem still persists.",
	commonErrorSearchNotAvailable: "Search is not available for {collection} data collection",
	commonErrorSearchNoCollectionSelected: "Select data collection before search",
	commonErrorActionNoSelectionRequired: "Please don't select anything to complete the action.",	// this message shouldn't be seen by user at all
	commonErrorActionOneSelectedRowRequired: "Please select exactly one element (row) to complete the action.",
	commonErrorActionSelectedRowsRequired: "Please select at least one element (row) to complete the action.",
	commonErrorActionUnknown: "Number of selected items is not defined",	// this message shouldn't be seen by user at all
	commonErrorEmptyNameProhibited: "Please specify the name",
	commonErrorIncompatibleBrowser: "The browser version {version} does not support some of the features required. Please, update the browser to newer version.",
	commonErrorViewpartUnavailable: "This tab is unavailable",	// this message shouldn't be seen by user during normal operation
	commonErrorNoSaveACopy: "Save a copy option is not available for this document",
	commonErrorNoSave: "Save option is not available for this document",
	commonErrorNotSavedAs: "Document cannot be saved into {path}.<br>{message}",
	commonErrorSessionExpiredNoUnsaved: "Your session has been expired. The most likely causes for this include temporary problems with Internet connection or server restart. You will be redirected to login page. We are sorry for inconvenience.",
	commonErrorSessionExpiredUnsaved: "Your session has been expired. The most likely causes for this include temporary problems with Internet connection or server restart. You will be redirected to login page.<br><br>You had the following documents unsaved:<br>{documents}<br>These changes will be lost. We are sorry for inconvenience.", 
	commonAddDiagramElementUnavailable: "A new element of the type '{type}' can not be created for this type of diagram. Please, use the database search first to find this element in one of the databases and add it to the diagram from the search results",
	
    
	// Tooltips
	commonTooltipCloseDocument: "Close",
	commonTooltipRemoveUserButton: "Remove",
	commonTooltipEditElementInfo: "Edit",
	commonTooltipViewElementInfo: "View",
	
	// Messages
	commonLoading: "Loading...",
	commonConfirmElementsOverwrite: "The following elements already exist: {elements}Do you want to overwrite them?",
	commonConfirmDocumentRevert: "Do you want to revert current document to the latest saved version?",

	// Search tab
	commonSearchNoCollectionSelected: "<b>Select database to search in...</b>",
	commonSearchCollectionSelected: "Search in database <b>{collection}</b>",
	
	// Common dialogs
	commonSessionExpiredTitle: "Session expired",
	commonErrorBoxTitle: "Error",
	commonMessageBoxTitle: "Message",
	commonConfirmBoxTitle: "Confirm",
	commonPlotBoxTitle: "Plot",
	commonEditElementInfoTitle: "Edit",
	commonRemoveElementPrompt: "Do you really want to remove: {name}?",
	commonDynamicActionPropertiesTitle: "Properties",
    commonSaved: "Document saved",
    commonNotSaved: "Document cannot be saved in current location.<br><br>Would you like to save it with different name?",
    commonNotSavedMessage: "Document cannot be saved in current location. Server reported the following message:<br>{message}<br><br>Would you like to save it with different name?",
    commonConfirmSaveOnClose: "Document {path} was changed. Would you like to save it before close?",
	
	// Progress bar messages
	commonProgressComplete: "Completed",
	commonProgressTerminatedByUser: "Terminated by user",
	commonProgressTerminatedByError: "Failed",

	/* Menus (prefix: menu) */
	menuCloseTab: "Close tab",
	menuCloseOtherTabs: "Close other tabs",
	menuCloseAllTabs: "Close all tabs",
	menuShowInTree: "Show in tree",
	
	/* Dialogs (prefix: dlg) */ 
	dlgCreateScriptTitle: "Create script",
	dlgCreateScriptDefaultName: "New script",
	dlgCreateFolderTitle: "Create folder",
	dlgCreateFolderName: "Folder name:",
	dlgCreateWorkflowTitle: "Specify the name for the new workflow",
	dlgCreateWorkflowDefaultName: "New workflow",
	dlgCreateResearchTitle: "Specify the name for the new research diagram",
	dlgCreateResearchDefaultName: "New research",
	dlgSaveAsTitle: "Save a copy",
	
	dlgCreateDiagramTitle: "Create diagram",
	dlgCreateDiagramDatabase: "Database name:",
	dlgCreateDiagramName: "Diagram name:",
	dlgCreateDiagramType: "Diagram type:",
	dlgCreateDiagramTypeDescription: "Diagram type description:",
	dlgCreateDiagramNoTypes: "No diagram types available",
    dlgCreateDiagramDefaultName: "New diagram",
    
    dlgConvertDiagramTitle: "Convert diagram",
    dlgConvertDiagramSuccess: "Diagram was successfully converted",
	
	dlgCreateOptimizationTitle: "Create optimization document",
	dlgCreateOptimizationName: "Optimization",
	dlgCreateOptimizationDiagram: "Diagram",
	dlgCreateOptimizationErrorNoPath: "Please, select optimization path",
	dlgCreateOptimizationErrorNoDiagram: "Please, select diagram",
    dlgCreateOptimizationResultTitle: "Save optimization result",
    dlgCreateOptimizationResultDefaultName: "New result",
	
	dlgLoginTitle: "Login",
	dlgLoginPrompt: "Enter username and password:",
	dlgLoginUsername: "Username:",
	dlgLoginPassword: "Password:",
	
	dlgPlotEditorTitle: "Plot editor",
	dlgPlotEditorLoading: "Loading series table...",
	dlgPlotEditorPlotPath: "Plot path:",
	dlgPlotEditorAddSeriesTitle: "New series",
	dlgPlotEditorAddSeriesTable: "Simulation result/experiment table:",
	dlgPlotEditorAddSeriesX: "X variable:",
	dlgPlotEditorAddSeriesY: "Y variable:",
	
	dlgImportTitle: "Import file",
	dlgImportErrorNoCollection: "Please select a folder to import to",
	dlgImportErrorNoImportersForCollection: "Import into the selected folder is not possible",
	dlgImportErrorUploadFailed: "Upload failed:",
	dlgImportErrorImportFailed: "Import failed:",
	dlgImportEmptyOptions: "No options applicable for the selected format",
	dlgImportFile: "File to import:",
	dlgImportTargetFolder: "Target folder",
	dlgImportFormat: "Format:",
	dlgImportDetectedFormat: "(detected)",
	dlgImportUploadingFile: "Uploading file <b>{file}</b>...",
	dlgImportFileUploaded: "File <b>{file}</b> is uploaded.<br>Please verify format and options and press 'Import' to proceed.",
	dlgImportImportingFile: "Importing file <b>{file}</b>...",
    dlgImportSelectFromRepo: "Select from repository",
    dlgImportTypeContent: "Type file content",
    dlgImportUploadURL: "Upload from FTP",
	
	dlgExportTitle: "Export document",
	dlgExportFormat: "Format:",
	dlgExportPropertiesTitle: "Export properties",
	
	dlgColumnExpressionTitle: "Set column expression",
	
	dlgNewNodeTitle: "Create new node",
	dlgNewNodeSelectKernel: "Select element kernel",
	
	dlgNewEdgeTitle: "Create new edge",
	dlgNewEdgeInput: "Input node",
	dlgNewEdgeOutput: "Output node",
	
	dlgNewPortTitle: "Create port",
	dlgNewPortPrompt: "Create port for element",
    
    dlgUploadURLTitle : "Upload from URL",
    dlgUploadURLPrompt : "ftp://user:pass@ftp.somehost.org/file.txt",
    
    dlgTypeContentTitle: "Type file content",
    dlgTypeContentName: "Name: ",
    dlgTypeContentDefaultName: "data.txt",
    dlgTypeContentPrompt: "Type file content here",
    dlgTypeContentErrorNoName: "Please, type file name", 
    
    dlgConfirmTitle : "Please, confirm changes",
    
    dlgChangePassOldPass: "Old password:",
    dlgChangePassNewPass: "New password:",
    
    dlgCreatePrjTitle : "Create new project",
    dlgCreatePrjCreated : "Project {name} successfully created",
    dlgCreatePrjName: "Project name:",
    dlgCreatePrjDescription: "Description:",
    dlgCreatePrjDescriptionPlaceholder: "Type project description here",
    
    dlgEnterCommentTitle: "Enter comment",
	dlgEnterCommentName: "Version comment:",
    
	// Tree
	treeLoading: "Loading...",
	treeLoadNextItems: "Load next {itemsToLoad} ({itemsNotLoaded} not loaded)",
	treeLoadLastItems: "Load last {itemsToLoad}",
	
	/* Viewparts (tabs below the document) (prefix: vp) */
	
	vpScriptTitle: "Script",
	vpScriptScriptContext: "Script context",
	vpScriptButtonExecute: "Execute",
	
	vpDescriptionTitle: "My description",
	vpDescriptionNothingSelected: "Select tree element to see description",
	vpDescriptionButtonEdit: "Edit",
	vpDescriptionButtonSave: "Save",
	vpDescriptionCollectionTitle: "Data collection: <b>{collection}</b>",
	vpDescriptionPrompt: "<span style='color:gray'>Put your comment here - press Edit button above</span>",
	vpDescriptionNotAvailable: "<span style='color:gray'>User description is not available</span>",
	
	vpSearchTitle: "Search result",
	vpSearchErrorCannotLoad: "Can't load the resulting table",
	vpSearchErrorNoSelection: "Select search result to add",
	vpSearchSearching: "Searching...",
	vpSearchNotFound: "Nothing found. Please change the search parameters and try again.",
	vpSearchNotAvailable: "Search is not available for this data collection.",
	vpSearchButtonAdd: "Add to diagram",
	vpSearchButtonFullMode: "Full mode",
	vpSearchButtonExport: "Export",
	vpSearchButtonCopyClipboard: "Add element to clipboard",
	vpSearchNewDiagramTitle: "Specify new diagram name",
	
	vpScriptOutputTitle: "Output",
	
	vpModelParametersLoading: "Loading {type} table...",
	vpModelButtonAdd: "Add selected {type} to the fitting set",
	vpModelButtonRemove: "Remove selected {type} from the fitting set",
	vpModelButtonSave: "Save",
	
	vpClipboardTitle: "Clipboard",
	vpClipboardErrorAlreadyAdded: "Element <b>{name}</b> is already saved to clipboard.",
	vpClipboardErrorNoDiagramToPaste: "You should open diagram to add elements",
	vpClipboardErrorNoRowSelected: "Select clipboard row to add",
	vpClipboardHeaderPath: "Path",
	vpClipboardHeaderName: "Name",
	vpClipboardHeaderType: "Type",
	vpClipboardButtonCopy: "Add element to clipboard",
	vpClipboardButtonPaste: "Insert element into diagram",
	vpClipboardButtonRemove: "Remove element from clipboard",
	
	vpGraphSearchTitle: "Graph search",
	vpGraphSearchErrorAlreadyAdded: "Element is already in the list.",
	vpGraphSearchErrorNoInput: "No input elements were selected. Please, check '{action}' for the input elements in the elements table",
    vpGraphSearchErrorNoList: "No elements in the elements table. Please, drag-and-drop appropriate element from the tree, or select element on a diagram and use 'Add element' button",
    vpGraphSearchErrorNoElementSelected: "No elements were selected. Please, open diagram and select element to add",
    vpGraphSearchErrorNoDiagram: "Please, open diagram to add elements of use 'Add to new diagram' button",
    vpGraphSearchErrorNoDatabase : "Sorry. No graph search can be done for this element. There are no respective network database currently available.",
    vpGraphSearchErrorGeneral : "The graph search can not be performed with the current settings. Try to change search settings and run the search again.",
    vpGraphSearchLoadingTable: "Loading table...",
	vpGraphSearchLoadingProperties: "Loading properties...",
	vpGraphSearchHeaderAdd: "Add",
	vpGraphSearchHeaderUse: "Use",
	vpGraphSearchHeaderDatabase: "Database",
	vpGraphSearchHeaderID: "ID",
	vpGraphSearchHeaderTitle: "Title",
	vpGraphSearchHeaderType: "Type",
	vpGraphSearchHeaderLinkedFrom: "Linked from",
	vpGraphSearchButtonAdd: "Add element",
	vpGraphSearchButtonStart: "Start search",
	vpGraphSearchButtonClear: "Clear elements pane",
	vpGraphSearchButtonPaste: "Add to current diagram",
	vpGraphSearchButtonPasteToNew: "Add to a new diagram",
	vpGraphSearchNewDiagramTitle: "Specify new diagram name",
	
	vpSQLTitle: "SQL Editor",
	vpSQLSelectTable: "--Select table to view columns--",
	vpSQLHistory: "History:",
	vpSQLTables: "Tables:",
	vpSQLColumns: "Columns:",
	vpSQLButtonRun: "Run query",
	vpSQLButtonExplain: "Explain plan",
	vpSQLButtonClear: "Clear query",
	vpSQLButtonReload: "Reload tables",
	
	vpTasksTitle: "Tasks",
	vpTasksButtonStop: "Stop selected tasks",
	vpTasksButtonRemove: "Remove selected tasks",
	
	vpSimulationTitle: "Simulation",
	vpSimulationButtonSave: "Save",
	vpSimulationButtonSimulate: "Simulate",
	vpSimulationResultTitle: "Simulation result",
	vpSimulationResultComplete: "Completed",
	
	// Table-specific viewparts
	vpTableFilterTitle: "Filters",
	vpTableFilterButtonApply: "Apply filters",
	vpTableFilterButtonClear: "Remove filters",
	vpTableFilterButtonExport: "Export filtered table",
	vpTableFilterSaveDialogTitle: "Specify name of the export result table",
	
	vpTableDetailsTitle: "Details",
	
	vpTableStructureTitle: "Structure",
	
	vpColumnsTitle: "Columns",
	vpColumnsButtonRefresh: "Recalculate document",
	vpColumnsButtonAdd: "Add column",
	vpColumnsButtonRemove: "Remove selected columns",
	vpColumnsConfirmRemove: "Do you really want to remove selected column(s) with all data?",
	
	vpGenomeBrowserTitle: "Genome browser",
	
	// Genome-browser specific view parts
	vpSitesTitle: "Sites",
	
	vpTracksTitle: "Tracks",
	
	// Diagram-specific viewparts
	vpOverviewTitle: "Overview",
	
	vpHemodynamicsTitle: "Hemodynamics",
	vpHemodynamicsProperties: "Properties",
	vpHemodynamicsVesselsTable: "Table of vessels",
	vpHemodynamicsButtonRun: "Run hemodynamics",
	vpHemodynamicsButtonStop: "Stop hemodynamics",
	vpHemodynamicsButtonSave: "Save changes",
	vpHemodynamicsButtonOpenPlot: "Open plot dialog to visualize simulation results",
	vpHemodynamicsPlotWindowTitle: "Hemodynamics graphics",
	
	vpAgentSimulationTitle: "Agent Simulation",
	vpAgentSimulationButtonRun: "Simulate",
	vpAgentSimulationButtonStop: "Stop simulation",
	vpAgentSimulationButtonSave: "Save",
	vpAgentSimulationPlotWindowTitle: "Simulation plot {plotnames}",
	
	vpLayoutTitle: "Layout",
	vpLayoutPrompt: "<b>Layouter:</b> ",
	vpLayoutErrorCannotLoadLayouters: "Cannot load layouters list",
	vpLayoutButtonRun: "Prepare layout",
	vpLayoutButtonStop: "Stop layout",
	vpLayoutButtonApply: "Apply layout",
	vpLayoutButtonSave: "Save layout",
	vpLayoutProcessing: "Layouting in process... It may take a few minutes.",
    vpLayoutErrorLayouting: "Cannot layout diagram. Try to change options or select another layouter.",
	
	vpWorkflowTitle: "Workflow",
	vpWorkflowButtonRun: "Run workflow",
	vpWorkflowButtonStop: "Stop workflow",
	vpWorkflowButtonBind: "Bind property to variable",
	vpWorkflowButtonReturn: "Return to 'run workflow' mode",
	vpWorkflowParametersDialogTitle: "Workflow parameters",
	vpWorkflowParametersDialogSaveResearch: "Save research diagram",
	vpWorkflowComplete: "Workflow execution complete",
	vpWorkflowFailed: "Workflow failed: {error}",
	
	vpJournalTitle: "History",
	vpJournalButtonPaste: "Paste selected element(s) to diagram",
	vpJournalButtonRemove: "Remove selected element(s) from journal",
	vpJournalButtonRemoveAll: "Remove all records from journal",
	vpJournalConfirmRemoveAll: "Do you really want to clean journal?",
	
	vpDiagramFilterTitle: "Expression mapping",
	vpDiagramFilterQuickMappingHint: "To map expression values on the diagram, drag and drop the corresponding table from the tree area over the diagram. You can then adjust parameters in the form that will be displayed.",
	vpDiagramFilterNoMapping: "(none)",
	vpDiagramFilterMappingPrompt: "Mapping: ",
	vpDiagramFilterButtonNew: "Create new mapping",
	vpDiagramFilterButtonRemove: "Remove mapping",
	vpDiagramFilterNewDialogTitle: "Add mapping",
	vpDiagramFilterNewDialogPrompt: "Mapping name:",
	vpDiagramFilterConfirmRemove: "Do you really want to remove mapping '{filter}'?",
	
	vpVersionTitle: "Version history",
	vpVersionCommentTitle: "<b>Comment:</b>",
	vpVersionCurrentItem: "(current)",
	
	/* Analysis document (prefix: an) */
	anLoading: "Loading properties...",
	anButtonRun: "Run",
	anButtonStop: "Cancel",
	anButtonScript: "Generate script",
	anButtonExpertMode: "Show expert options &gt;&gt;",
	anButtonSimpleMode: "&lt;&lt; Hide expert options",
	
	anGalaxyDataSourceHint: "Select output folder and click on the 'link' to visit external database. There you can use 'Export to Galaxy' option to import data into the selected folder.",
	
	/* Diagram document (prefix: dgr) */
	dgrButtonHistory: "History",
	dgrButtonUsers: "Users",
	dgrHistoryPanelTitle: "History",
	dgrUsersPanelTitle: "Users",
	dgrChatPanelTitle: "Chat",
	dgrHistoryPanelApply: "Revert document to the selected version",
	dgrHistoryPanelRestore: "Return to the latest version",
	
	/* Workflow document (not workflow diagram!) (prefix: wf) */
	wfLoading: "Loading workflow properties...",
	wfButtonRun: "Run workflow",
	wfButtonStop: "Cancel",
	wfButtonEdit: "Edit workflow",
	
	/* Genome browser (prefix: gb) */
	gbPositionPrompt: "Position:",
	gbPositionButton: "Set",
	gbFindPrompt: "Find:",
	gbFindTitle: "Find site by ID",
	gbFindButton: "Go",
	gbErrorTrackAlreadyPresent: "Track {path} already present",
	gbErrorNoTracksToExport: "No tracks to export",
	gbErrorSiteNotFound: "Site not found",
	gbProjectDialogTitle: "Project settings",
	gbProjectDialogSelectTracks: "Select tracks:",
	gbProjectDialogSelectAll: "Select all",
	gbExportDialogTitle: "Export track",
	gbExportDialogTrack: "Track:",
	gbExportDialogFormat: "Format:",
	gbExportDialogRangeDisplayed: "Displayed range",
	gbExportDialogRangeWhole: "Whole sequence",
	gbExportDialogRangeCustom: "Custom range",
	gbExportDialogProgress: "Preparing file...",
	gbNextSite: "Scroll to the next site",
	gbPreviousSite: "Scroll to the previous site",
	
	/* Table document (prefix: tbl) */
	tblButtonEdit: "Edit",
	tblButtonApplyEdit: "Apply",
	tblButtonCancelEdit: "Cancel",
	tblButtonSelectAll: "Select all",
	tblButtonChangeView: "Change view",
	tblFilterMessage: "Filter: {filter}",
	tblExpressionHint: "Note:<br/>"+
		"Expression should be written in JavaScript language. You can refer to the row values using column name as the identifier. "+
		"Non-word characters in the column names are replaced with underscore character.<br><br>"+
		"Expression example: <b>Score > 0.5 && Group_number == 1</b><br><br>"+
        "You can also use predefined templates for easy creation of the filtering expressions.",
    tblExpressionPrompt: "Expression in JavaScript language:",
    tblExpressionColumnList: "Columns (double-click to paste):",
    tblExpressionTemplatePrompt: "Template to construct the filtering expression:",
    tblExpressionSelectTemplate: "- Select template -",
    tblExpressionTemplatesColumn:
    	[["Log2 of column", "Math.log($1)/Math.LN2", "C:Column"],
    	 ["Log10 of column", "Math.log($1)/Math.LN10", "C:Column"],
    	 ["Fraction of two columns", "$1/$2", "C:Numerator", "C:Denominator"]],
    tblExpressionTemplatesFilter:
    	[["Above threshold", "$1 > $2", "C:Column", "N:Threshold"],
    	 ["Below threshold", "$1 < $2", "C:Column", "N:Threshold"],
    	 ["Equals to value", "$1 == $2", "C:Column", "N:Value"],
    	 ["Inside range", "$1 > $2 && $1 < $3", "C:Column", "N:Lower bound", "N:Upper bound"],
    	 ["Outside range", "$1 < $2 || $1 > $3", "C:Column", "N:Lower bound", "N:Upper bound"],
    	 ["Contains sub-string", "any($1,function(e){return e.indexOf($2)>=0})", "C:Column", "S:Sub-string"],
    	 ["Starts with sub-string", "any($1,function(e){return e.indexOf($2)==0})", "C:Column", "S:Sub-string"],
    	 ["Contains sub-string (case-insensitive)", "any($1,function(e){return e.toLowerCase().indexOf($2.toLowerCase()) >= 0})", "C:Column", "S:Sub-string"],
    	 ["Starts with sub-string (case-insensitive)", "any($1,function(e){return e.toLowerCase().indexOf($2.toLowerCase()) == 0})", "C:Column", "S:Sub-string"]
    	 ],
    	 
    /* Diagram document (prefix: dgr) */
	
	end: ""
};
