Ejemplo n.º 1
0
        /// <summary>
        /// Get all in stock category links
        /// </summary>
        /// <param name="categoryLinks">IEnumerable with all category pages</param>
        /// <returns>IEnumerable with correct in stock category links</returns>
        public static IEnumerable <string> GetInStockCategoryLinks(IEnumerable <string> categoryLinks)
        {
            try
            {
                foreach (var link in categoryLinks)
                {
                    var navigateToPage = StoreConnection.ConnectToStoreAddress(link);
                    var allHrefsOnPage = navigateToPage.DocumentNode.SelectNodes("//a[@href]");
                    foreach (var href in allHrefsOnPage)
                    {
                        var hrefLink = href.Attributes["href"].Value;
                        if (hrefLink.Contains("in-stoc") && !string.IsNullOrWhiteSpace(hrefLink))
                        {
                            Console.WriteLine(hrefLink);
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine("GetInStockCategoryLinks: " + ex.Message);
            }

            return(categoryInStockLinks);
        }
Ejemplo n.º 2
0
        public ActionResult Create(Product product)
        {
            if (ModelState.IsValid)
            {
                using (SqlConnection con = new SqlConnection(StoreConnection.GetConnection()))
                {
                    using (SqlCommand cmd = new SqlCommand("Products_SaveOrUpdate", con))
                    {
                        cmd.CommandType = CommandType.StoredProcedure;
                        cmd.Parameters.AddWithValue("@Id", product.Id);
                        cmd.Parameters.AddWithValue("@Name", product.Name);
                        cmd.Parameters.AddWithValue("@Price", product.Price);
                        cmd.Parameters.AddWithValue("@Supplier", product.Supplier);

                        if (con.State != System.Data.ConnectionState.Open)
                        {
                            con.Open();
                        }
                        cmd.ExecuteNonQuery();
                    }
                }
                return(RedirectToAction("GetAll"));
            }
            return(View("Create", product));
        }
Ejemplo n.º 3
0
        /// <summary>
        /// Get nodes
        /// </summary>
        /// <param name="categoryAddress"></param>
        /// <returns></returns>
        public static HtmlNodeCollection StoreCategoryHtmlNodeCollection(
            string categoryAddress)
        {
            var connectToStoreCategory          = StoreConnection.ConnectToStoreAddress(categoryAddress);
            var storeCategoryHtmlNodeCollection =
                connectToStoreCategory.DocumentNode.SelectNodes($"//select[@class='js-trigger-catalog-toolbar-apply-filters']/option");

            return(storeCategoryHtmlNodeCollection);
        }
Ejemplo n.º 4
0
        public override void BuildPacket()
        {
            base.BuildPacket();
            var request = new NumberAllArtistRequest();

            byte[] packetData;
            using (var stream = new MemoryStream())
            {
                Serializer.Serialize(stream, request);
                packetData = stream.ToArray();
            }
            GlobalVariables.CountRequest++;
            Packet = StoreConnection.BuildServerPacket(packetData.Length + 16, (int)MessageType.Type.NUMBER_ARTIST, 2,
                                                       packetData, GlobalVariables.CountRequest);
        }
Ejemplo n.º 5
0
        /// <summary>
        /// Scrape products in category
        /// </summary>
        /// <param name="categoryPages"></param>
        private void ScrapeAllProductsInCategoryPage(IEnumerable <string> categoryPages)
        {
            var id = 0;

            foreach (var categoryPage in categoryPages)
            {
                var page     = StoreConnection.ConnectToStoreAddress(categoryPage);
                var allNodes = page.DocumentNode.SelectNodes("//div[@class='Product']");
                foreach (var node in allNodes)
                {
                    var prices = FindPrices(node);
                    AddProducts(id, node, prices);
                    id++;
                }
            }
        }
Ejemplo n.º 6
0
        /// <summary>
        /// returns the first store that has the same storeName
        /// </summary>
        /// <param name="storeName"></param>
        /// <returns></returns>
        public IStore GetStore(StoreConnection conn)
        {
            var builders = this.Store.GetAll();

            if ((builders != null && builders.Count > 0))
                return null;

            foreach (var each in builders)
            {
                if (each.CanHandle(conn))
                {
                    return each.GetStore(conn);
                }
            }
            return null;
        }
Ejemplo n.º 7
0
        public override void BuildPacket()
        {
            base.BuildPacket();
            var request = new MotionVersionRequest();

            request.motion_id.AddRange(MotionID);
            byte[] packetData;
            using (var stream = new MemoryStream())
            {
                Serializer.Serialize(stream, request);
                packetData = stream.ToArray();
            }
            GlobalVariables.CountRequest++;
            Packet = StoreConnection.BuildServerPacket(packetData.Length + 16, (int)MessageType.Type.MOTION_VERSION, 2,
                                                       packetData, GlobalVariables.CountRequest);
        }
Ejemplo n.º 8
0
        /// <summary>
        /// Connect to site map and get all categories links
        /// </summary>
        /// <param name="siteMap"></param>
        /// <returns></returns>
        public IEnumerable <string> GetAllCategories(string siteMap)
        {
            var websiteLink  = StoreConnection.ConnectToStoreAddress(siteMap);
            var allHrefNodes = GetAllHrefNodesFromLink(websiteLink);

            AddNonCategoryLinksToDictionary(_incorrectCategoryLinksDictionary);

            foreach (var node in allHrefNodes)
            {
                var siteLink = node.GetAttributeValue("href", string.Empty);
                if (!_incorrectCategoryLinksDictionary.ContainsKey(siteLink) && siteLink.Contains("http"))
                {
                    _correctcategoryLinksList.Add(siteLink);
                }
            }
            return(GetDistinctCategories(_correctcategoryLinksList));
        }
Ejemplo n.º 9
0
        public override void BuildPacket()
        {
            base.BuildPacket();
            var notificationRequest = new NotificationRequest()
            {
                user_id = GlobalVariables.CurrentUser.UserID
            };

            byte[] packetData;
            using (var stream = new MemoryStream())
            {
                Serializer.Serialize(stream, notificationRequest);
                packetData = stream.ToArray();
            }
            GlobalVariables.CountRequest++;
            Packet = StoreConnection.BuildServerPacket(packetData.Length + 16, (int)MessageType.Type.NOTIFICATION, 2,
                                                       packetData, GlobalVariables.CountRequest);
        }
Ejemplo n.º 10
0
        public override void BuildPacket()
        {
            base.BuildPacket();
            var forgotPassRequest = new ForgotPassRequest
            {
                email = Email
            };

            byte[] packetData;
            using (var stream = new MemoryStream())
            {
                Serializer.Serialize(stream, forgotPassRequest);
                packetData = stream.ToArray();
            }
            GlobalVariables.CountRequest++;
            Packet = StoreConnection.BuildServerPacket(packetData.Length + 16, (int)MessageType.Type.USER_FORGOT_PASS, 2,
                                                       packetData, GlobalVariables.CountRequest);
        }
Ejemplo n.º 11
0
        public override void BuildPacket()
        {
            base.BuildPacket();
            var request = new NumberMotionOfCategoryRequest()
            {
                type = Type
            };

            byte[] packetData;
            using (var stream = new MemoryStream())
            {
                Serializer.Serialize(stream, request);
                packetData = stream.ToArray();
            }
            GlobalVariables.CountRequest++;
            Packet = StoreConnection.BuildServerPacket(packetData.Length + 16, (int)MessageType.Type.NUMBER_MOTION_OF_CATEGORY, 2,
                                                       packetData, GlobalVariables.CountRequest);
        }
Ejemplo n.º 12
0
        public override void BuildPacket()
        {
            base.BuildPacket();
            var infoRequest = new MotionInfoRequest()
            {
                motion_id = MotionID
            };

            byte[] packetData;
            using (var stream = new MemoryStream())
            {
                Serializer.Serialize(stream, infoRequest);
                packetData = stream.ToArray();
            }
            GlobalVariables.CountRequest++;
            Packet = StoreConnection.BuildServerPacket(packetData.Length + 16, (int)MessageType.Type.MOTION_INFO_GET, 2,
                                                       packetData, GlobalVariables.CountRequest);
        }
Ejemplo n.º 13
0
        public override void BuildPacket()
        {
            base.BuildPacket();
            var updateArtistRequest = new ArtistInfoRequest()
            {
                artist_id = ArtistID
            };

            byte[] packetData;
            using (var stream = new MemoryStream())
            {
                Serializer.Serialize(stream, updateArtistRequest);
                packetData = stream.ToArray();
            }
            GlobalVariables.CountRequest++;
            Packet = StoreConnection.BuildServerPacket(packetData.Length + 16, (int)MessageType.Type.ARTIST_INFO_GET, 2,
                                                       packetData, GlobalVariables.CountRequest);
        }
Ejemplo n.º 14
0
        public override void BuildPacket()
        {
            base.BuildPacket();
            var request = new NumberMotionDownloadRequest()
            {
                user_id = UserID
            };

            byte[] packetData;
            using (var stream = new MemoryStream())
            {
                Serializer.Serialize(stream, request);
                packetData = stream.ToArray();
            }
            GlobalVariables.CountRequest++;
            Packet = StoreConnection.BuildServerPacket(packetData.Length + 16, (int)MessageType.Type.NUMBER_MOTION_DOWNLOAD, 2,
                                                       packetData, GlobalVariables.CountRequest);
        }
Ejemplo n.º 15
0
        public override void BuildPacket()
        {
            base.BuildPacket();
            var request = new UserArtistRequest()
            {
                user_id = GlobalVariables.CurrentUser.UserID
            };

            byte[] packetData;
            using (var stream = new MemoryStream())
            {
                Serializer.Serialize(stream, request);
                packetData = stream.ToArray();
            }
            GlobalVariables.CountRequest++;
            Packet = StoreConnection.BuildServerPacket(packetData.Length + 16, (int)MessageType.Type.ARTIST_LIST_USER_FOLLOW, 2,
                                                       packetData, GlobalVariables.CountRequest);
        }
Ejemplo n.º 16
0
        public override void BuildPacket()
        {
            base.BuildPacket();
            var request = new MyMotionRatingInfoRequest()
            {
                user_id   = GlobalVariables.CurrentUser.UserID,
                motion_id = MotionID
            };

            byte[] packetData;
            using (var stream = new MemoryStream())
            {
                Serializer.Serialize(stream, request);
                packetData = stream.ToArray();
            }
            GlobalVariables.CountRequest++;
            Packet = StoreConnection.BuildServerPacket(packetData.Length + 16, (int)MessageType.Type.RATING_INFO_USER, 2,
                                                       packetData, GlobalVariables.CountRequest);
        }
Ejemplo n.º 17
0
        public IDbCommand CreateCommand(string sql)
        {
            if (!StoreConnection.State.HasFlag(ConnectionState.Open))
            {
                StoreConnection.Open();
            }

            var command = StoreConnection.CreateCommand();

            command.Connection     = StoreConnection;
            command.CommandText    = sql;
            command.CommandTimeout = CommandTimeout;
            if (_transactionCount > 0 && Transaction != null)
            {
                command.Transaction = Transaction.UnderlyingTransaction;
            }

            return(command);
        }
Ejemplo n.º 18
0
        public override void BuildPacket()
        {
            base.BuildPacket();
            var createArtistRequest = new ListArtistRequest()
            {
                start = Start,
                end   = End
            };

            byte[] packetData;
            using (var stream = new MemoryStream())
            {
                Serializer.Serialize(stream, createArtistRequest);
                packetData = stream.ToArray();
            }
            GlobalVariables.CountRequest++;
            Packet = StoreConnection.BuildServerPacket(packetData.Length + 16, (int)MessageType.Type.ARTIST_LIST_EXISTED, 2,
                                                       packetData, GlobalVariables.CountRequest);
        }
Ejemplo n.º 19
0
        public override void BuildPacket()
        {
            base.BuildPacket();

            var userOwnMotionRequest = new UserOwnMotionRequest
            {
                user_id   = GlobalVariables.CurrentUser.UserID,
                motion_id = MotionID
            };

            byte[] packetData;
            using (var stream = new MemoryStream())
            {
                Serializer.Serialize(stream, userOwnMotionRequest);
                packetData = stream.ToArray();
            }
            GlobalVariables.CountRequest++;
            Packet = StoreConnection.BuildServerPacket(packetData.Length + 16, (int)MessageType.Type.CHECK_USER_OWNED_MOTION, 2,
                                                       packetData, GlobalVariables.CountRequest);
        }
Ejemplo n.º 20
0
        public override void BuildPacket()
        {
            base.BuildPacket();
            var request = new SignupRequest()
            {
                email        = Email,
                display_name = Name,
                avatar_url   = Avatar
            };

            byte[] packetData;
            using (var stream = new MemoryStream())
            {
                Serializer.Serialize(stream, request);
                packetData = stream.ToArray();
            }
            GlobalVariables.CountRequest++;
            Packet = StoreConnection.BuildServerPacket(packetData.Length + 16, (int)MessageType.Type.SIGNUP, 2,
                                                       packetData, GlobalVariables.CountRequest);
        }
Ejemplo n.º 21
0
        public override void BuildPacket()
        {
            base.BuildPacket();
            var request = new UserMotionRequest()
            {
                user_id = GlobalVariables.CurrentUser.UserID,
                end     = End,
                start   = Start
            };

            byte[] packetData;
            using (var stream = new MemoryStream())
            {
                Serializer.Serialize(stream, request);
                packetData = stream.ToArray();
            }
            GlobalVariables.CountRequest++;
            Packet = StoreConnection.BuildServerPacket(packetData.Length + 16, (int)MessageType.Type.MOTION_DOWNLOAD_USER, 2,
                                                       packetData, GlobalVariables.CountRequest);
        }
Ejemplo n.º 22
0
        public override void BuildPacket()
        {
            base.BuildPacket();
            var request = new ArtistMotionRequest()
            {
                artist_id = ArtistID,
                start     = Start,
                end       = End
            };

            byte[] packetData;
            using (var stream = new MemoryStream())
            {
                Serializer.Serialize(stream, request);
                packetData = stream.ToArray();
            }
            GlobalVariables.CountRequest++;
            Packet = StoreConnection.BuildServerPacket(packetData.Length + 16, (int)MessageType.Type.MOTION_OF_ARTIST, 2,
                                                       packetData, GlobalVariables.CountRequest);
        }
Ejemplo n.º 23
0
        public override void BuildPacket()
        {
            base.BuildPacket();
            var changePassRequest = new ChangePassRequest
            {
                user_id  = GlobalVariables.CurrentUser.UserID,
                new_pass = NewPassword,
                old_pass = OldPassword
            };

            byte[] packetData;
            using (var stream = new MemoryStream())
            {
                Serializer.Serialize(stream, changePassRequest);
                packetData = stream.ToArray();
            }
            GlobalVariables.CountRequest++;
            Packet = StoreConnection.BuildServerPacket(packetData.Length + 16, (int)MessageType.Type.USER_CHANGE_PASS, 2,
                                                       packetData, GlobalVariables.CountRequest);
        }
Ejemplo n.º 24
0
        public override void BuildPacket()
        {
            base.BuildPacket();
            var request = new SearchMotionRequest()
            {
                end   = End,
                start = Start,
                query = Query
            };

            byte[] packetData;
            using (var stream = new MemoryStream())
            {
                Serializer.Serialize(stream, request);
                packetData = stream.ToArray();
            }
            GlobalVariables.CountRequest++;
            Packet = StoreConnection.BuildServerPacket(packetData.Length + 16, (int)MessageType.Type.MOTION_SEARCH, 2,
                                                       packetData, GlobalVariables.CountRequest);
        }
Ejemplo n.º 25
0
        public override void BuildPacket()
        {
            base.BuildPacket();
            var categoryMotionRequest = new CategoryMotionRequest()
            {
                type  = CategoryType,
                start = Start,
                end   = End
            };

            byte[] packetData;
            using (var stream = new MemoryStream())
            {
                Serializer.Serialize(stream, categoryMotionRequest);
                packetData = stream.ToArray();
            }
            GlobalVariables.CountRequest++;
            Packet = StoreConnection.BuildServerPacket(packetData.Length + 16, (int)MessageType.Type.MOTION_OF_CATEGORY, 2,
                                                       packetData, GlobalVariables.CountRequest);
        }
Ejemplo n.º 26
0
        public override void BuildPacket()
        {
            base.BuildPacket();
            var followRequest = new FollowRequest()
            {
                type      = FollowType,
                user_id   = GlobalVariables.CurrentUser.UserID,
                artist_id = ArtistID
            };

            byte[] packetData;
            using (var stream = new MemoryStream())
            {
                Serializer.Serialize(stream, followRequest);
                packetData = stream.ToArray();
            }
            GlobalVariables.CountRequest++;
            Packet = StoreConnection.BuildServerPacket(packetData.Length + 16, (int)MessageType.Type.FOLLOW_UNFOLLOW, 2,
                                                       packetData, GlobalVariables.CountRequest);
        }
Ejemplo n.º 27
0
        public override void BuildPacket()
        {
            base.BuildPacket();
            var siginRequest = new SigninRequest
            {
                email    = Email,
                password = Password,
                type     = SiginType
            };

            byte[] packetData;
            using (var stream = new MemoryStream())
            {
                Serializer.Serialize(stream, siginRequest);
                packetData = stream.ToArray();
            }
            GlobalVariables.CountRequest++;
            Packet = StoreConnection.BuildServerPacket(packetData.Length + 16, (int)MessageType.Type.SIGNIN, 2,
                                                       packetData, GlobalVariables.CountRequest);
        }
Ejemplo n.º 28
0
        public void Dispose()
        {
            try
            {
                if (Transaction != null)
                {
                    Transaction.Dispose();
                    Transaction = null;
                }
                DbContext.Dispose();

                if (Entities != null)
                {
                    Entities.Dispose();
                    Entities = null;
                }

                if (/*_ownConnection &&*/ Connection != null)
                {
                    if (!_connectionDisposed)
                    {
                        Connection.Dispose();
                    }
                    Connection = null;
                }

                if (StoreConnection != null && _ownStoreConnection)
                {
                    if (!_storeConnectionDisposed)
                    {
                        StoreConnection.Dispose();
                    }
                    StoreConnection = null;
                }
            }
            catch (Exception e)
            {
                Logger.OutputLog(e, "DataContext.Dispose");
                throw;
            }
        }
Ejemplo n.º 29
0
 public ActionResult Delete(int id)
 {
     if (id < 0)
     {
         return(HttpNotFound());
     }
     using (SqlConnection con = new SqlConnection(StoreConnection.GetConnection()))
     {
         using (SqlCommand cmd = new SqlCommand("Product_DeleteById", con))
         {
             cmd.CommandType = CommandType.StoredProcedure;
             cmd.Parameters.AddWithValue("@Id", id);
             if (con.State != System.Data.ConnectionState.Open)
             {
                 con.Open();
             }
             cmd.ExecuteNonQuery();
         }
     }
     return(RedirectToAction("GetAll"));
 }
Ejemplo n.º 30
0
            public override void BuildPacket()
            {
                base.BuildPacket();
                var request = new ReadMotionDataRequest()
                {
                    motion_id = MotionID,
                    type      = Type,
                    offset    = Offset,
                    size      = Size
                };

                byte[] packetData;
                using (var stream = new MemoryStream())
                {
                    Serializer.Serialize(stream, request);
                    packetData = stream.ToArray();
                }
                GlobalVariables.CountRequest++;
                Packet = StoreConnection.BuildServerPacket(packetData.Length + 16, (int)MessageType.Type.READ_MOTION_DATA, 2,
                                                           packetData, GlobalVariables.CountRequest);
            }
Ejemplo n.º 31
0
        public override void BuildPacket()
        {
            base.BuildPacket();

            var setUserInfoRequest = new UpdateProfileRequest
            {
                user_id      = GlobalVariables.CurrentUser.UserID,
                avatar_url   = AvatarUrl,
                display_name = Name
            };

            byte[] packetData;
            using (var stream = new MemoryStream())
            {
                Serializer.Serialize(stream, setUserInfoRequest);
                packetData = stream.ToArray();
            }
            GlobalVariables.CountRequest++;
            Packet = StoreConnection.BuildServerPacket(packetData.Length + 16, (int)MessageType.Type.USER_INFO_SET, 2,
                                                       packetData, GlobalVariables.CountRequest);
        }