Example #1
0
        private static void getBookPages(PublishedBook publishedBook, XmlBook book)
        {
            int count = 0;

            for (int i = 0; i < publishedBook.Pages.Length; i++)
            {
                for (int j = 0; j < publishedBook.Pages[i].Lines.Length; j++)
                {
                    if (publishedBook.Pages[i].Lines[j].Trim() != string.Empty)
                    {
                        count++;
                    }
                }
            }
            book.Contents = new XmlBook.Content[count];
            count         = 0;
            for (int i = 0; i < publishedBook.Pages.Length; i++)
            {
                for (int j = 0; j < publishedBook.Pages[i].Lines.Length; j++)
                {
                    if (publishedBook.Pages[i].Lines[j].Trim() != string.Empty)
                    {
                        book.Contents[count]      = new XmlBook.Content();
                        book.Contents[count].Line = j + 1;
                        book.Contents[count].Page = i + 1;
                        book.Contents[count].Text = publishedBook.Pages[i].Lines[j];
                        count++;
                    }
                }
            }
        }
Example #2
0
 private static void getBookContributors(PublishedBook publishedBook, XmlBook book)
 {
     if (publishedBook.Contributors != null)
     {
         book.Contributors = new XmlBook.Contributor[publishedBook.Contributors.Length];
         for (int i = 0; i < publishedBook.Contributors.Length; i++)
         {
             book.Contributors[i]      = new XmlBook.Contributor();
             book.Contributors[i].Name = publishedBook.Contributors[i];
         }
     }
 }
Example #3
0
        public static XmlBook Load(string id)
        {
            string fileName = "data/books/" + id + ".xml";

            try
            {
                XmlSerializer serializer = new XmlSerializer(typeof(XmlBook));
                FileStream    fs         = new FileStream(fileName, FileMode.Open);
                XmlBook       book       = (XmlBook)serializer.Deserialize(fs);
                fs.Close();
                return(book);
            }
            catch (Exception)
            {
                return(null);
            }
        }
Example #4
0
        public static bool Save(PublishedBook publishedBook)
        {
            XmlBook book     = XmlBook.FromPublishedBook(publishedBook);
            string  fileName = DataPath + book.ID.ToString() + ".xml";

            try
            {
                if (!Directory.Exists(Path.GetDirectoryName(fileName)))
                {
                    Directory.CreateDirectory(Path.GetDirectoryName(fileName));
                }
                XmlSerializer serializer = new XmlSerializer(typeof(XmlBook));
                FileStream    fs         = new FileStream(fileName, FileMode.Create);
                serializer.Serialize(fs, book);
                fs.Close();
                return(true);
            }
            catch (Exception)
            {
                return(false);
            }
        }
Example #5
0
		private static XmlBook FromPublishedBook(PublishedBook publishedBook)
		{
			XmlBook book = new XmlBook();
			book.Title = publishedBook.Title;
			book.Author = publishedBook.Author;
			book.FirstPublished = publishedBook.FirstPublished.ToString("u").Replace(' ','T');
			book.LastPublished = publishedBook.LastPublished.ToString("u").Replace(' ','T');
			book.Hue = publishedBook.Hue;
			book.HuedItemID = publishedBook.HuedItemID;
			book.ItemID = publishedBook.ItemID;
			getBookContributors(publishedBook, book);
			getBookPages(publishedBook, book);
			try
			{
				book.ID = new Guid(publishedBook.PublishID);
			}
			catch(Exception)
			{
				book.ID = Guid.NewGuid();
				publishedBook.PublishID = book.ID.ToString();
			}
			return book;
		}
Example #6
0
        private static XmlBook FromPublishedBook(PublishedBook publishedBook)
        {
            XmlBook book = new XmlBook();

            book.Title          = publishedBook.Title;
            book.Author         = publishedBook.Author;
            book.FirstPublished = publishedBook.FirstPublished.ToString("u").Replace(' ', 'T');
            book.LastPublished  = publishedBook.LastPublished.ToString("u").Replace(' ', 'T');
            book.Hue            = publishedBook.Hue;
            book.HuedItemID     = publishedBook.HuedItemID;
            book.ItemID         = publishedBook.ItemID;
            getBookContributors(publishedBook, book);
            getBookPages(publishedBook, book);
            try
            {
                book.ID = new Guid(publishedBook.PublishID);
            }
            catch (Exception)
            {
                book.ID = Guid.NewGuid();
                publishedBook.PublishID = book.ID.ToString();
            }
            return(book);
        }
Example #7
0
		private static void getBookPages(PublishedBook publishedBook, XmlBook book)
		{
			int count = 0;
			for(int i = 0; i < publishedBook.Pages.Length; i++)
				for(int j = 0; j < publishedBook.Pages[i].Lines.Length; j++)
					if(publishedBook.Pages[i].Lines[j].Trim() != string.Empty)
						count++;
			book.Contents = new XmlBook.Content[count];
			count = 0;
			for(int i = 0; i < publishedBook.Pages.Length; i++)
				for(int j = 0; j < publishedBook.Pages[i].Lines.Length; j++)
					if(publishedBook.Pages[i].Lines[j].Trim() != string.Empty)
					{
						book.Contents[count] = new XmlBook.Content();
						book.Contents[count].Line = j + 1;
						book.Contents[count].Page = i + 1;
						book.Contents[count].Text = publishedBook.Pages[i].Lines[j];
						count++;
					}
		}
Example #8
0
		private static void getBookContributors(PublishedBook publishedBook, XmlBook book)
		{
			if(publishedBook.Contributors != null)
			{
				book.Contributors = new XmlBook.Contributor[publishedBook.Contributors.Length];
				for(int i = 0; i < publishedBook.Contributors.Length; i++)
				{
					book.Contributors[i] = new XmlBook.Contributor();
					book.Contributors[i].Name = publishedBook.Contributors[i];
				}
			}
		}