static void Main(string[] args) { if (args.Length < 3) { return; } string connectionString = args[0]; _period = args[1]; string fileName = args[2]; try { _list = new List <PeriodInfo>(); _year = _period.Substring(0, 4); using (_writer = new StreamWriter(fileName)) using (_connection = new IrbisConnection(connectionString)) { _manager = new MagazineManager(_connection); MagazineInfo[] allMagazines = _manager.GetAllMagazines(); foreach (MagazineInfo magazine in allMagazines) { ProcessMagazine(magazine); } _list = _list.OrderBy(i => i.Title).ToList(); _writer.WriteLine("<h3>"); _writer.WriteLine(Resources.MagazineRegistrationForPeriod); _writer.WriteLine(HtmlText.Encode(_period)); _writer.WriteLine("</h3>"); _writer.WriteLine("<table border='1' cellpadding='3' cellspacing='0'>"); _writer.WriteLine("<tr>"); _writer.WriteLine(Resources.MagazineTitle); _writer.WriteLine(Resources.ExpectedIssueNumbers); _writer.WriteLine(Resources.RegisteredIssues); _writer.WriteLine(Resources.MissedIssues); _writer.WriteLine("</tr>"); foreach (PeriodInfo info in _list) { PrintMagazine(info); } _writer.WriteLine("</table>"); } } catch (Exception exception) { Console.WriteLine(exception); } }
static void Main(string[] args) { var magazineManager = new MagazineManager(); InputProcessorHelper parserHelper = new InputProcessorHelper(magazineManager); string line; while ((line = Console.ReadLine()) != null && line != "") { parserHelper.ParseLine(line); } var result = magazineManager.DisplayContentOfMagazines(new DefualtMagazineContentDisplayStrategy()); Console.WriteLine(result); Console.ReadLine(); }
internal IrbisExecutive ( ManagedClient64 client ) { if (ReferenceEquals(client, null)) { throw new ArgumentNullException("client"); } Client = client; Queries = new QueryManager(); Magazines = new MagazineManager(Client); Transactions = new IrbisTransactionManager(Client); Readers = new ReaderManager(Client); Requests = new RequestManager(); }
/// <summary> /// Invoked when the application is launched normally by the end user. Other entry points /// will be used when the application is launched to open a specific file, to display /// search results, and so forth. /// </summary> /// <param name="args">Details about the launch request and process.</param> protected override async void OnLaunched(LaunchActivatedEventArgs args) { Frame rootFrame = Window.Current.Content as Frame; // Do not repeat app initialization when the Window already has content, // just ensure that the window is active if (rootFrame == null) { var licenseInformation = CurrentApp.LicenseInformation; //await LibrelioApplication.Utils.Utils.prepareTestData(); SettingsPane.GetForCurrentView().CommandsRequested += App_CommandsRequested; var fileHandle = await Windows.ApplicationModel.Package.Current.InstalledLocation.GetFileAsync(@"CustomizationAssets\application_.xml"); var xml = await XmlDocument.LoadFromFileAsync(fileHandle); var appName = xml.SelectSingleNode("/resources/string[@name='app_name']"); ClientName = xml.SelectSingleNode("/resources/string[@name='client_name']").InnerText; MagazineName = xml.SelectSingleNode("/resources/string[@name='magazine_name']").InnerText; SharingTitle = xml.SelectSingleNode("/resources/string[@name='sharing_title']").InnerText; SharingText = xml.SelectSingleNode("/resources/string[@name='sharing_text']").InnerText; SharingLink = xml.SelectSingleNode("/resources/string[@name='sharing_link']").InnerText; PrivacyLink = xml.SelectSingleNode("/resources/string[@name='privacy_link']").InnerText; var node = xml.SelectSingleNode("/resources/hex[@name='background_color']"); Color = node.InnerText; SetupCustomColors(); Application.Current.Resources["AppName"] = appName.InnerText; Manager = new MagazineManager("http://librelio-europe.s3.amazonaws.com/" + ClientName + "/" + MagazineName + "/", "Magazines"); await DiscoverActiveDownloadsAsync(); // Create a Frame to act as the navigation context and navigate to the first page rootFrame = new Frame(); //Associate the frame with a SuspensionManager key SuspensionManager.RegisterFrame(rootFrame, "AppFrame"); if (args.PreviousExecutionState == ApplicationExecutionState.Terminated) { // Restore the saved session state only when appropriate try { await SuspensionManager.RestoreAsync(); } catch (SuspensionManagerException) { //Something went wrong restoring state. //Assume there is no state and continue } } // Place the frame in the current Window Window.Current.Content = rootFrame; } if (rootFrame.Content == null) { // When the navigation stack isn't restored navigate to the first page, // configuring the new page by passing required information as a navigation // parameter if (!rootFrame.Navigate(typeof(LibrelioApplication.ItemsPage), "AllGroups")) { throw new Exception("Failed to create initial page"); } } // Ensure the current window is active Window.Current.Activate(); }
public static async Task<MagazineManager> LoadLocalMagazinesAsync() { if (_sampleDataSource.AllGroups.Count > 0) return null; var manager = new MagazineManager("http://librelio-europe.s3.amazonaws.com/niveales/wind/", "Magazines"); await manager.LoadLocalMagazineList(); bool newGroup = false; MagazineDataGroup group = null; if (GetGroup("My Magazines") == null) { group = new MagazineDataGroup("My Magazines", "My Magazines", ""); newGroup = true; } else { group = GetGroup("My Magazines"); } if (newGroup) { _sampleDataSource.AllGroups.Add(group); newGroup = false; } for (int i = 0; i < manager.MagazineLocalUrl.Count; i++) { if (manager.MagazineLocalUrl[i].IsDownloaded) { var m = new MagazineModel(manager.MagazineLocalUrl[i], i); if (GetItem(m.Title + m.Subtitle) != null) continue; BitmapImage image = null; try { var file = await StorageFile.GetFileFromPathAsync(m.pngPath); image = new BitmapImage(); await image.SetSourceAsync(await file.OpenReadAsync()); } catch { } int index = 0; for (int p = 0; p < group.Items.Count; p++) { index = p + 1; if (group.Items[p].Index > m.Index) break; } if (group.Items.Count == 0) group.Items.Insert(index, new MagazineViewModel(m.Title + m.Subtitle, 2, 2, m.Title, m.Subtitle, image, group, m)); else group.Items.Insert(index, new MagazineViewModel(m.Title + m.Subtitle, 1, 1, m.Title, m.Subtitle, image, group, m)); } } newGroup = false; if (GetGroup("All Magazines") == null) { group = new MagazineDataGroup("All Magazines", "All Magazines", ""); newGroup = true; } else { group = GetGroup("All Magazines"); } if (newGroup) { _sampleDataSource.AllGroups.Add(group); newGroup = false; } for (int i = 0; i < manager.MagazineLocalUrl.Count; i++) { var m = new MagazineModel(manager.MagazineLocalUrl[i], i); if (GetItem(m.Title + m.Subtitle + "1") != null) continue; BitmapImage image = null; try { //if (m.isDowloaded) { // var file = await StorageFile.GetFileFromPathAsync(m.pngPath); // image = new BitmapImage(); // await image.SetSourceAsync(await file.OpenReadAsync()); //} else { image = new BitmapImage(new Uri(m.pngUrl)); //} } catch { } int index = 0; for (int p = 0; p < group.Items.Count; p++) { index = p + 1; if (group.Items[p].Index > m.Index) break; } MagazineViewModel item = null; if (group.Items.Count == 0) item = new MagazineViewModel(m.Title + m.Subtitle + "1", 2, 2, m.Title, m.Subtitle, image, group, m); else item = new MagazineViewModel(m.Title + m.Subtitle + "1", 1, 1, m.Title, m.Subtitle, image, group, m); if (m.isDowloaded) item.SecondButtonVisible = false; group.Items.Insert(index, item); } return manager; }
public static async Task<MagazineManager> LoadMagazinesAsync() { if (_sampleDataSource.AllGroups.Count > 0) return null; var manager = new MagazineManager("http://librelio-europe.s3.amazonaws.com/niveales/wind/", "Magazines"); await manager.LoadLocalMagazineList(); //if (manager.MagazineLocalUrl.Count == 0) //{ //await manager.LoadPLISTAsync(); //} bool newGroup = false; MagazineDataGroup group = null; if (GetGroup("My Magazines") == null) { group = new MagazineDataGroup("My Magazines", "My Magazines", ""); newGroup = true; } else { group = GetGroup("My Magazines"); } if (newGroup) { _sampleDataSource.AllGroups.Add(group); newGroup = false; } for (int i = 0; i < manager.MagazineLocalUrl.Count; i++) { if (manager.MagazineLocalUrl[i].IsDownloaded) { var m = new MagazineModel(manager.MagazineLocalUrl[i], i); if (GetItem(m.Title + m.Subtitle) != null) continue; BitmapImage image = null; try { var file = await StorageFile.GetFileFromPathAsync(m.pngPath); image = new BitmapImage(); await image.SetSourceAsync(await file.OpenReadAsync()); } catch { } if (group.Items.Count == 0) group.Items.Add(new MagazineViewModel(m.Title + m.Subtitle, 2, 2, m.Title, m.Subtitle, image, group, m)); else group.Items.Add(new MagazineViewModel(m.Title + m.Subtitle, 1, 1, m.Title, m.Subtitle, image, group, m)); } } newGroup = false; if (GetGroup("All Magazines") == null) { group = new MagazineDataGroup("All Magazines", "All Magazines", ""); newGroup = true; } else { group = GetGroup("All Magazines"); } if (newGroup) { _sampleDataSource.AllGroups.Add(group); newGroup = false; } await manager.LoadPLISTAsync(); var count = manager.MagazineLocalUrl.Count; if (count == 0) count = manager.MagazineUrl.Count; for (int i = 0; i < count; i++) { LibrelioLocalUrl localUrl = null; MagazineModel m = null; //if (manager.MagazineLocalUrl.Count == 0) //{ localUrl = manager.FindInMetadata(manager.MagazineUrl[i]); if (localUrl != null && localUrl.IsDownloaded) m = new MagazineModel(localUrl, manager.MagazineUrl[i].Index); else m = new MagazineModel(manager.MagazineUrl[i]); //} //else //{ //localUrl = manager.MagazineLocalUrl[i]; //m = new MagazineModel(localUrl, i); //} if (GetItem(m.Title + m.Subtitle + "1") != null) continue; BitmapImage image = null; try { if (localUrl != null && localUrl.IsDownloaded) { var file = await StorageFile.GetFileFromPathAsync(m.pngPath); image = new BitmapImage(); await image.SetSourceAsync(await file.OpenReadAsync()); } else { image = new BitmapImage(new Uri(m.pngUrl)); } } catch { } MagazineViewModel item = null; if (group.Items.Count == 0) item = new MagazineViewModel(m.Title + m.Subtitle + "1", 2, 2, m.Title, m.Subtitle, image, group, m); else item = new MagazineViewModel(m.Title + m.Subtitle + "1", 1, 1, m.Title, m.Subtitle, image, group, m); if (localUrl != null && localUrl.IsDownloaded) item.SecondButtonVisible = false; group.Items.Add(item); } group.Items = new ObservableCollection<MagazineViewModel>(group.Items.OrderBy(item => item.Index)); //if (GetGroup("All Magazines") != null) return null; //PList list = new PList("Assets/data/magazines.plist"); ////TODODEBUG try // List<dynamic> arr = list[""]; // group = new MagazineDataGroup("All Magazines", "All Magazines", ""); // for (int i = 0; i < arr.Count; i++) // { // var m = new MagazineModel((Dictionary<string, dynamic>)arr[i]); // group.Items.Add(new MagazineViewModel("", "", "", null, group, m)); // } // _sampleDataSource.AllGroups.Add(group); return manager; }