Beispiel #1
0
        private void DeleteButton_Click(object sender, RoutedEventArgs e)
        {
            List <Label> label_list = new List <Label>();
            Button       btn        = (Button)sender;
            Canvas       cav        = (Canvas)btn.Parent;

            foreach (Label lab in cav.Children.OfType <Label>())
            {
                label_list.Add(lab);
            }
            Book_Data book_focused = new Book_Data();

            if (label_list[0].Content != null)
            {
                book_focused = User_Control.retrieve_book_data(label_list[0].Content.ToString());
            }
            bool             bcheck    = false;
            List <Book_Data> book_list = new List <Book_Data>();

            foreach (Book_Data data in Data_Context.onWishList)
            {
                if (data.BID == book_focused.BID && !bcheck)
                {
                    bcheck = true;
                    book_list.Add(data);
                }
            }
            foreach (Book_Data data in book_list)
            {
                Data_Context.onWishList.Remove(data);
            }
            ICart.Items.Refresh();
        }
Beispiel #2
0
 /// <summary>
 /// Add new borrow info to the database with BID, and UID
 /// </summary>
 /// <param name="sBID"></param>
 /// <param name="sUID"></param>
 /// <returns></returns>
 public bool add_new_borrow(string sBID, string sUID, DateTime dtBorrowDate, int returnafter)
 {
     try
     {
         //setups
         var         data    = new Borrow_Data(sBID, sUID, dtBorrowDate, returnafter);
         DAL_Account account = new DAL_Account();
         DAL_Book    book    = new DAL_Book();
         book.init_client();
         account.init_client();
         data.BrID = create_new_id();
         //minus 1 book from the database
         Book_Data bookdata = book.retrieve_book_data(sBID);
         bookdata.left -= 1;
         book.update_book_data(bookdata);
         //update user brid
         account.add_brid(sUID, data.BrID);
         //add new borrow info
         SetResponse response = client.Set(sBorrowTable_path + data.BrID, data);
         Borrow_Data result   = response.ResultAs <Borrow_Data>();
         if (result != null)
         {
             return(true);
         }
     }
     catch (Exception)
     {
     }
     return(false);
 }
Beispiel #3
0
        public void set_value_from_item(Book_Data data)
        {
            this.selected_book           = data;
            this.NameTextBox.Text        = selected_book.name;
            this.AuthorTextBox.Text      = selected_book.author;
            this.ReleaseYearTextBox.Text = selected_book.release_year.ToString();
            for (int i = 0; i < this.CategoryComboBox.Items.Count; i++)
            {
                if (this.CategoryComboBox.Items[i].ToString().Contains(selected_book.category))
                {
                    this.CategoryComboBox.SelectedIndex = i;
                    array[3] = check_string_availability(CategoryComboBox.Text);
                    enable_add_button();
                }
            }
            this.DescTextBox.Text   = selected_book.description;
            this.PriceTextBox.Text  = selected_book.price.ToString();
            this.AmountTextBox.Text = selected_book.amount.ToString();

            byte[] binaryData = Convert.FromBase64String(selected_book.cover_page);

            BitmapImage bi = new BitmapImage();

            bi.BeginInit();
            bi.StreamSource = new MemoryStream(binaryData);
            bi.EndInit();
            PictureX.Source = bi;
        }
Beispiel #4
0
        private string create_new_bid(Book_Data book)
        {
            string part1  = get_first_letters(book.name);
            string part2  = get_first_letters(book.author);
            string part3  = book.release_year.ToString();
            string result = part1 + part2 + part3;

            return(result);
        }
Beispiel #5
0
        /// <summary>
        /// Retrieve a single book data by its BID, the fnc returned Book_Data
        /// </summary>
        /// <param name="sBID"></param>
        /// <returns></returns>
        public Book_Data retrieve_book_data(string sBID)
        {
            Book_Data        data = new Book_Data();
            FirebaseResponse retrieve_response = client.Get(sBookTable_path + sBID);

            if (retrieve_response.Body != "null")
            {
                data = retrieve_response.ResultAs <Book_Data>();
                return(data);
            }
            return(null);
        }
Beispiel #6
0
        /// <summary>
        /// update book info by a new book_data
        /// </summary>
        /// <param name="data"></param>
        /// <returns></returns>
        public bool update_book_data(Book_Data data)
        {
            FirebaseResponse response = client.Update(sBookTable_path + data.BID, data);
            Book_Data        result   = response.ResultAs <Book_Data>();

            if (result != null)
            {
                return(true);
            }
            else
            {
                return(false);
            }
        }
Beispiel #7
0
 /// <summary>
 /// Update book info, then add it to the database
 /// </summary>
 /// <param name="sBID"></param>
 /// <param name="sName"></param>
 /// <param name="sAuthor"></param>
 /// <param name="nReleaseYear"></param>
 /// <param name="sCategory"></param>
 /// <param name="sDescription"></param>
 /// <param name="sCoverPage"></param>
 /// <param name="nPrice"></param>
 /// <param name="nAmount"></param>
 /// <returns></returns>
 public bool update_book_info(string sBID, string sName, string sAuthor, int nReleaseYear, string sCategory,
                              string sDescription, string sCoverPage, int nPrice, int nAmount)
 {
     try
     {
         var data = new Book_Data(sName, sAuthor, nReleaseYear, sCategory, sDescription, sCoverPage, nPrice, nAmount);
         FirebaseResponse response = client.Update(sBookTable_path + sBID, data);
         Book_Data        result   = response.ResultAs <Book_Data>();
         if (result != null)
         {
             return(true);
         }
     }
     catch (Exception)
     {
     }
     return(false);
 }
Beispiel #8
0
 /// <summary>
 /// Add new book_data to the database, then return true if succeeded, false if not
 /// </summary>
 /// <param name="sName"></param>
 /// <param name="sAuthor"></param>
 /// <param name="nReleaseYear"></param>
 /// <param name="sCategory"></param>
 /// <param name="sDescription"></param>
 /// <param name="sCoverPage"></param>
 /// <param name="nPrice"></param>
 /// <param name="nAmount"></param>
 /// <returns></returns>
 public bool add_new_book(string sName, string sAuthor, int nReleaseYear, string sCategory,
                          string sDescription, string sCoverPage, int nPrice, int nAmount)
 {
     try
     {
         var data = new Book_Data(sName, sAuthor, nReleaseYear, sCategory, sDescription, sCoverPage, nPrice, nAmount);
         data.BID = create_new_bid(data);
         SetResponse response = client.Set(sBookTable_path + data.BID, data);
         Book_Data   result   = response.ResultAs <Book_Data>();
         if (result != null)
         {
             return(true);
         }
     }
     catch (Exception)
     {
     }
     return(false);
 }
Beispiel #9
0
        public BorrowedPage()
        {
            InitializeComponent();
            List <string> BrID_List = User_Control.get_user_BrID(Data_Context.currentAccount);

            Console.WriteLine(Data_Context.currentAccount.BrID);
            foreach (string Data in BrID_List)
            {
                Borrow_Data Brwdata = User_Control.retrieve_borrow_data(Data);
                try
                {
                    Book_Data data = User_Control.retrieve_book_data(Brwdata.BID);
                    brwedbook.Add(data);
                }
                catch (Exception)
                {
                }
            }
            if (brwedbook.Count > 0)
            {
                IBook.ItemsSource = brwedbook;
            }
        }
Beispiel #10
0
 public bool update_book_data(Book_Data data)
 {
     Book_DAL.init_client();
     return(Book_DAL.update_book_data(data));
 }