protected void ddImpositionList_SelectedIndexChanged(object sender, Telerik.Web.UI.RadComboBoxSelectedIndexChangedEventArgs e) { if (ddImpositionList.SelectedIndex == 0) { return; } PagiFile pagiFile = new PagiFile(); string pagiPath = (string)Application["PressTemplateFolder"] + @"\" + ddImpositionList.Text; if ((string)Application["PressTemplateFileExtension"] != "") { pagiPath += "." + (string)Application["PressTemplateFileExtension"]; } lblImpositionInfo.Text = ""; int paginationstart = 1; if (pagiFile.ParseFile(pagiPath, ref paginationstart) == false) { lblError.Text = "Error loading PAGI master file"; return; } lblImpositionInfo.Text = pagiFile.GetPagiSummary(); SetPublicationCombo(pagiFile.plan.publicationName); SetEditionsFromPublication(); SetSectionsFromPublication(); lblSection1.Visible = true; ddSectionList1.Visible = true; lblSection2.Visible = true; ddSectionList2.Visible = true; lblSection3.Visible = true; ddSectionList3.Visible = true; if (pagiFile.plan.editionList.Count > 0) { SetEditionCombo(pagiFile.plan.editionList[0].editionName); string s1 = "", s2 = "", s3 = ""; if (pagiFile.plan.editionList[0].sectionList.Count > 0) { s1 = pagiFile.plan.editionList[0].sectionList[0].sectionName; } if (pagiFile.plan.editionList[0].sectionList.Count > 1) { s2 = pagiFile.plan.editionList[0].sectionList[1].sectionName; } if (pagiFile.plan.editionList[0].sectionList.Count > 2) { s3 = pagiFile.plan.editionList[0].sectionList[2].sectionName; } SetSectionCombos(s1, s2, s3); if (pagiFile.plan.editionList[0].sectionList.Count < 3) { lblSection3.Visible = false; ddSectionList3.Visible = false; } if (pagiFile.plan.editionList[0].sectionList.Count < 2) { lblSection2.Visible = false; ddSectionList2.Visible = false; } } }
private void SavePagePlanXML(bool overwriteconfirmed) { CCDBaccess db = new CCDBaccess(); string errmsg = ""; lblInfo.Text = ""; lblError.Text = ""; bool bExistingProduction = false; DateTime selectedDateTime = (DateTime)dateChooserPubDate.SelectedDate; DateTime pubdate = new DateTime(selectedDateTime.Year, selectedDateTime.Month, selectedDateTime.Day, 0, 0, 0, 0); int publicationID = Globals.GetIDFromName("PublicationNameCache", ddPublicationList.SelectedValue); double latestHours = db.GetLatestPossibleUpdate(publicationID, out errmsg); if (latestHours > 0) { DateTime hotTime = pubdate.AddHours(-1.0 * latestHours); if (hotTime < DateTime.Now) { lblError.Text = Global.rm.GetString("txtProductionLocked"); lblError.ForeColor = Color.Orange; return; } } PagiFile pagiFile = new PagiFile(); string pagiPath = (string)Application["PressTemplateFolder"] + @"\" + ddImpositionList.Text; if ((string)Application["PressTemplateFileExtension"] != "") { pagiPath += "." + (string)Application["PressTemplateFileExtension"]; } int paginationstart = 1; bool loadStatus = pagiFile.ParseFile(pagiPath, ref paginationstart); if (loadStatus == false) { lblError.Text = "Error loading PAGI plan file " + pagiPath; lblError.ForeColor = Color.Red; return; } // Set current selected publication, pubdate, edition and section(s) string oldPublication = pagiFile.plan.publicationName; pagiFile.plan.publicationName = ddPublicationList.SelectedValue; if (oldPublication != ddPublicationList.SelectedValue) { string s = pagiFile.plan.publicationName.ToUpper(); // AutreX -> AUTRX if (s.IndexOf("AUTR") != -1 && s.Length > 5) { pagiFile.plan.publicationAlias = "AUTR" + s.Substring(5, 1); } } pagiFile.plan.publicationDate = selectedDateTime; pagiFile.plan.planName = string.Format("{0:00}-{1:00}-{2:0000} {3}", selectedDateTime.Day, selectedDateTime.Month, selectedDateTime.Year, ddPublicationList.SelectedValue); pagiFile.plan.updatetime = DateTime.Now; string sInfo = ""; if (pagiFile.plan.editionList.Count > 0) { string oldEdition = pagiFile.plan.editionList[0].editionName; pagiFile.plan.editionList[0].editionName = ddEditionList.SelectedValue; if (oldEdition != ddEditionList.SelectedValue) { if (pagiFile.plan.editionList[0].editionName.IndexOf(' ') == 2) { pagiFile.plan.editionList[0].editionComment = pagiFile.plan.editionList[0].editionName.Substring(0, 2); } } foreach (PagiPlanDataSection sec in pagiFile.plan.editionList[0].sectionList) { foreach (PagiPlanDataPage page in sec.pageList) { if (page.masterEdition == oldEdition) { page.masterEdition = ddEditionList.SelectedValue; } } if (sInfo != "") { sInfo += ", "; } sInfo += string.Format("{0} {1} pages", sec.sectionName, sec.pageList.Count); } if (pagiFile.plan.editionList[0].sectionList.Count > 0) { pagiFile.plan.editionList[0].sectionList[0].sectionName = ddSectionList1.SelectedValue; } if (pagiFile.plan.editionList[0].sectionList.Count > 1) { pagiFile.plan.editionList[0].sectionList[1].sectionName = ddSectionList2.SelectedValue; } if (pagiFile.plan.editionList[0].sectionList.Count > 2) { pagiFile.plan.editionList[0].sectionList[2].sectionName = ddSectionList3.SelectedValue; } } string pageOutputFile = (string)Application["PressTemplateOutputFolder"] + @"\" + string.Format("WebCenter_{0}_{1:00}-{2:00}_{3}_{4}_{5}", ddPublicationList.SelectedValue, pubdate.Day, pubdate.Month, ddEditionList.SelectedValue, Globals.DateTime2TimeStamp(DateTime.Now), (string)Session["UserName"]); if (pagiFile.GeneratePagiFile(pageOutputFile, txtFilename.Text.Trim(), paginationstart) == false) { lblError.Text = "Error writing PAGI plan file " + pageOutputFile; lblError.ForeColor = Color.Red; return; } updateTree = 0; Session["RefreshTree"] = false; existingProductionPrompt = 0; existingProductionPrompt2 = 0; saveConfirm.Value = "0"; lblInfo.Text = "Plan added to import queue..(" + string.Format("{0}-{1:00}.{2:00}-{3}", ddPublicationList.SelectedValue, pubdate.Day, pubdate.Month, ddEditionList.SelectedValue); lblError.ForeColor = Color.Green; updateTree = 1; Session["RefreshTree"] = true; string userName = (string)Session["UserName"]; if ((string)Session["UserDomain"] != "") { userName = (string)Session["UserDomain"] + @"\" + (string)Session["UserName"]; } db.InsertUserHistory(userName, bExistingProduction ? 4 : 2, string.Format("{0}-{1:00}.{2:00}-{3}-{4}", ddPublicationList.SelectedValue, pubdate.Day, pubdate.Month, ddEditionList.SelectedValue, sInfo), out errmsg); db.InsertLogEntry((int)Application["ProcessID"], (int)Globals.EventCodes.PlanStartCreate, "WebCenter " + userName, string.Format("{0}-{1:00}{2:00}", ddPublicationList.SelectedValue, pubdate.Day, pubdate.Month), sInfo, 0, out errmsg); }