public void LocalizeSelectedItems(bool localize) { var moduleCtrl = new ModuleController(); foreach (GridDataItem row in localizedModulesGrid.SelectedItems) { var localizedModuleId = (int)row.OwnerTableView.DataKeyValues[row.ItemIndex]["ModuleId"]; var localizedTabId = (int)row.OwnerTableView.DataKeyValues[row.ItemIndex]["TabId"]; ModuleInfo sourceModule = moduleCtrl.GetModule(localizedModuleId, localizedTabId, false); if (sourceModule != null) { if (sourceModule.DefaultLanguageModule != null) { if (localize) { //Localize moduleCtrl.LocalizeModule(sourceModule, LocaleController.Instance.GetLocale(sourceModule.CultureCode)); } else { //Delocalize moduleCtrl.DeLocalizeModule(sourceModule); //Mark module as Not Translated moduleCtrl.UpdateTranslationStatus(sourceModule, false); } } } } moduleCtrl.ClearCache(TabId); //Rebind localized Modules DataBind(); //Raise Changed event OnModuleLocalizationChanged(EventArgs.Empty); }
private void Localize(ModuleAction Command) { var moduleCtrl = new ModuleController(); ModuleInfo sourceModule = moduleCtrl.GetModule(ModuleContext.ModuleId, ModuleContext.TabId, false); switch (Command.CommandName) { case ModuleActionType.LocalizeModule: moduleCtrl.LocalizeModule(sourceModule, LocaleController.Instance.GetCurrentLocale(ModuleContext.PortalId)); break; case ModuleActionType.DeLocalizeModule: moduleCtrl.DeLocalizeModule(sourceModule); break; } // Redirect to the same page to pick up changes Response.Redirect(Request.RawUrl, true); }