Пример #1
0
        public IActionResult Result(URLModel urlm)
        {
            List <string> lst = CheckSMALL();

            foreach (string lista in lst)
            {
                if (lista == urlm.SMALL_URL)
                {
                    ModelState.AddModelError("Error", "URL Personalizada já existe.");
                    return(View("Index"));
                }
            }

            SqlConnection conn = new SqlConnection("Server=DESKTOP-28DDBR5\\SQLEXPRESS;Database=MakeItSmall;User Id=renan;Password=24025564;");

            conn.Open();


            string     query = "INSERT INTO [dbo].[URL_STORE]([BIG_URL],[SMALL_URL])VALUES(@BIG_URL, @SMALL_URL)";
            SqlCommand cmd   = new SqlCommand(query, conn);

            cmd.Parameters.AddWithValue("@BIG_URL", urlm.BIG_URL);
            cmd.Parameters.AddWithValue("@SMALL_URL", urlm.SMALL_URL);


            cmd.ExecuteNonQuery();

            conn.Close();

            string temp = "mkur.link/" + urlm.SMALL_URL;

            ModelState.AddModelError("Error", temp);
            return(View("Index"));
        }
Пример #2
0
        /// <summary>
        /// Populates the view ViewModel.
        /// </summary>
        public override void HandleViewDataLoadEvent()
        {
            HLinkNoteModel HLinkObject = CommonRoutines.GetHLinkParameter <HLinkNoteModel>((BaseParamsHLink));

            if (!(HLinkObject is null) && HLinkObject.Valid)
            {
                NoteObject = HLinkObject.DeRef;

                BaseModelBase = NoteObject;

                // Get basic details
                BaseDetail.Add(new CardListLineCollection("Note Detail")
                {
                    new CardListLine("Type:", NoteObject.GType),
                    new CardListLine("Formatted:", NoteObject.GIsFormated),
                });

                // Add Model details
                BaseDetail.Add(DV.NoteDV.GetModelInfoFormatted((NoteModel)NoteObject));

                // Handle Link Note types
                if (NoteObject.GType == Constants.NoteTypeLink)
                {
                    URLModel newLinkURL = new URLModel
                    {
                        GDescription = NoteObject.ToString(),
                        GHRef        = new Uri(NoteObject.TextShort)
                    };

                    BaseDetail.Add(newLinkURL);
                }
            }
        }
        public void MWQMPlanController__MWQMPlanByProvince_Test()
        {
            foreach (CultureInfo culture in setupData.cultureListGood)
            {
                SetupTest(contactModelListGood[0], culture, controllerAction);

                using (TransactionScope ts = new TransactionScope())
                {
                    RetAddMWQMPlan retAddMWQMPlan = AddMWQMPlanAndSubElements((culture.TwoLetterISOLanguageName == "fr" ? LanguageEnum.fr : LanguageEnum.en));

                    string Q = "!View/" + retAddMWQMPlan.TVItemModelNB.TVText + "|||" + retAddMWQMPlan.TVItemModelNB.TVItemID;

                    PartialViewResult partialViewResult = controller._MWQMPlanByProvince(Q) as PartialViewResult;
                    Assert.IsNotNull(partialViewResult);

                    URLModel URLModelRet = (URLModel)partialViewResult.ViewBag.URLModel;
                    Assert.AreEqual(retAddMWQMPlan.TVItemModelNB.TVItemID, URLModelRet.TVItemIDList[0]);

                    List <ContactModel> AdminContactModelListRet = (List <ContactModel>)partialViewResult.ViewBag.AdminContactModelList;
                    Assert.IsNull(AdminContactModelListRet); // because IsMWQMPlanner == true

                    bool IsShowMap = (bool)partialViewResult.ViewBag.IsShowMap;
                    Assert.IsFalse(IsShowMap);

                    bool IsMWQMPlannerRet = (bool)partialViewResult.ViewBag.IsMWQMPlanner;
                    Assert.IsTrue(IsMWQMPlannerRet);

                    List <MWQMPlanAndFilesLabSheetCountModel> MWQMPlanAndFilesLabSheetCountModelListRet = (List <MWQMPlanAndFilesLabSheetCountModel>)partialViewResult.ViewBag.MWQMPlanAndFilesLabSheetCountModelList;
                    Assert.IsTrue(MWQMPlanAndFilesLabSheetCountModelListRet.Count > 1);

                    List <AppTaskModel> AppTaskModelListRet = (List <AppTaskModel>)partialViewResult.ViewBag.AppTaskModelList;
                    Assert.IsTrue(AppTaskModelListRet.Count == 0);
                }
            }
        }
        public async Task <ActionResult> Index(URLModel url)
        {
            if (ModelState.IsValid)
            {
                URLDetails shortUrl = await this._manager.ShortenUrl(url.OriginalURL, Request.UserHostAddress);

                url.ShortURL = string.Format("{0}://{1}{2}{3}", Request.Url.Scheme, Request.Url.Authority, Url.Content("~"), shortUrl.CustomUrl);
            }
            return(View(url));
        }
Пример #5
0
        public async Task <IActionResult> Update([FromBody] URLModel model)
        {
            ApplicationUser user = await this.userManager.FindByEmailAsync(User.Identity.Name);

            if (user == null)
            {
                return(new BadRequestResult());
            }

            PutObjectRequest putRequest = new PutObjectRequest();

            putRequest.BucketName = bucket;
            putRequest.Key        = folder + "/" + model.GUID + model.Extension;
            putRequest.FilePath   = path + @"\temporary\" + model.GUID + model.Extension;
            putRequest.CannedACL  = S3CannedACL.PublicRead;

            AmazonS3Client client = new AmazonS3Client(accessKey, secretKey, Amazon.RegionEndpoint.GetBySystemName(region));

            try
            {
                PutObjectResponse putResponse = await client.PutObjectAsync(putRequest);

                if (putResponse.HttpStatusCode == HttpStatusCode.OK)
                {
                    user.URLAvatar = baseS3URL + "/" + model.GUID + model.Extension;
                    IdentityResult updateResult = await this.userManager.UpdateAsync(user);

                    if (updateResult.Succeeded)
                    {
                        if (User.Claims.Where(w => w.Type == "Avatar").Any())
                        {
                            List <Claim> oldClaims = User.Claims.Where(w => w.Type == "Avatar").ToList();
                            for (int i = 0; i < oldClaims.Count; i++)
                            {
                                IdentityResult removalResult = await this.userManager.RemoveClaimAsync(user, oldClaims[i]);
                            }
                        }
                        Claim          newClaim     = new Claim("Avatar", user.URLAvatar);
                        IdentityResult addnewResult = await this.userManager.AddClaimAsync(user, newClaim);

                        if (addnewResult.Succeeded)
                        {
                            return(Ok(true));
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                string errors = ex.GetBaseException().ToString();
            }
            client.Dispose();

            return(new StatusCodeResult(500));
        }
Пример #6
0
        public IActionResult GetLongUrl([FromQuery] string longurl)
        {
            URLModel longUrl = _urlService.GetLongURL(longurl);

            if (longUrl != null)
            {
                return(Ok(longUrl));
            }

            return(NotFound());
        }
Пример #7
0
        public IActionResult Get(string shorturl)
        {
            URLModel shortUrl = _urlService.GetShortURL(shorturl);

            if (shortUrl != null)
            {
                return(Ok(shortUrl));
            }

            return(NotFound());
        }
        /// <summary>
        /// Load zero or more url content xml elements into alist of url models.
        /// </summary>
        /// <param name="xmlData">
        /// the xElement containing the url references.
        /// </param>
        private OCURLModelCollection GetURLCollection(XElement xmlData)
        {
            OCURLModelCollection t = new OCURLModelCollection();

            // Get colour
            Application.Current.Resources.TryGetValue("CardBackGroundUtility", out var varCardColour);
            Color cardColour = (Color)varCardColour;

            // Run query
            var theERElement =
                from orElementEl
                in xmlData.Elements(ns + "url")
                select orElementEl;

            if (theERElement.Any())
            {
                HLinkHomeImageModel newHomeLink = new HLinkHomeImageModel
                {
                    HomeImageType = CommonConstants.HomeImageTypeSymbol,
                    HomeSymbol    = CommonConstants.IconBookMark // TODO  Windows.UI.Xaml.Controls.Symbol.World,
                };

                // load event object references
                foreach (XElement theLoadORElement in theERElement)
                {
                    URLModel tt = new URLModel
                    {
                        Handle = "URL Collection",

                        HomeImageHLink = newHomeLink,

                        Priv = SetPrivateObject(GetAttribute(theLoadORElement.Attribute("priv"))),

                        GType = GetAttribute(theLoadORElement.Attribute("type")),

                        GHRef = GetUri(GetAttribute(theLoadORElement.Attribute("href"))),

                        GDescription = GetAttribute(theLoadORElement.Attribute("description")),
                    };

                    // set the Home image or symbol
                    tt.HomeImageHLink.HomeImageType    = CommonConstants.HomeImageTypeSymbol;
                    tt.HomeImageHLink.HomeSymbol       = IconFont.Link;
                    tt.HomeImageHLink.HomeSymbolColour = cardColour;

                    t.Add(tt);
                }
            }

            // Return sorted by the default text
            t.Sort(T => T.DeRef.GetDefaultText);

            return(t);
        }
Пример #9
0
        public static URLModel MapRequestModelToDBModel(ShortURLRequest requestModel)
        {
            URLModel result = new URLModel
            {
                CreateDate = DateTime.Now,
                LongURL    = requestModel.LongURL
            };

            result.ShortURL = TokenGenerator.GenerateShortUrl();

            return(result);
        }
Пример #10
0
        public void ContactController__contactList_Test()
        {
            foreach (CultureInfo culture in setupData.cultureListGood)
            {
                controllerAction = "_contactList";

                SetupTest(contactModelListGood[0], culture, controllerAction);

                using (TransactionScope ts = new TransactionScope())
                {
                    // Act
                    TVItemModel tvItemModelSubsector = randomService.RandomTVItem(TVTypeEnum.Subsector);

                    Assert.AreEqual("", tvItemModelSubsector.Error);

                    TVItemModel tvItemModelMunicipality = tvItemService.PostAddChildTVItemDB(tvItemModelSubsector.TVItemID, "Unique Municipality Name", TVTypeEnum.Municipality);

                    Assert.AreEqual("", tvItemModelMunicipality.Error);

                    int ContactTVItemID = 3;

                    TVItemLinkModel tvItemLinkModelNew = new TVItemLinkModel()
                    {
                        FromTVItemID = tvItemModelMunicipality.TVItemID,
                        ToTVItemID   = ContactTVItemID,
                        FromTVType   = TVTypeEnum.Municipality,
                        ToTVType     = TVTypeEnum.Contact,
                        Ordinal      = 0,
                        TVLevel      = 0,
                        TVPath       = "p" + tvItemModelMunicipality.TVItemID + "p" + ContactTVItemID,
                    };

                    TVItemLinkModel tvItemLinkModel = tvItemLinkService.PostAddTVItemLinkDB(tvItemLinkModelNew);

                    Assert.AreEqual("", tvItemLinkModel.Error);

                    string Q = "!Login/aaa/bbb|||" + tvItemModelMunicipality.TVItemID + "/1|||";

                    PartialViewResult partialViewResult = controller._contactList(Q) as PartialViewResult;

                    Assert.IsNotNull(partialViewResult);

                    URLModel urlModel = (URLModel)partialViewResult.ViewBag.URLModel;
                    Assert.IsNotNull(urlModel);
                    Assert.AreEqual(tvItemModelMunicipality.TVItemID, urlModel.TVItemIDList[0]);

                    List <ContactModel> contactModelList = (List <ContactModel>)partialViewResult.ViewBag.ContactModelList;
                    Assert.IsNotNull(contactModelList);
                    Assert.AreEqual(1, contactModelList.Count);
                    Assert.AreEqual(ContactTVItemID, contactModelList[0].ContactTVItemID);
                }
            }
        }
Пример #11
0
        private async Task MakeRequestAsync(URLModel urlReqest)
        {
            var client = new HttpClient();

            // Request headers
            client.DefaultRequestHeaders.Add("Ocp-Apim-Subscription-Key", SportAPIUtil.SubscriptionKey);



            var uri = String.Format(urlReqest.URL);

            var response = await client.GetAsync(uri);
        }
Пример #12
0
        public void InfrastructureController__infrastructureList_Test()
        {
            controllerAction = "_infrastructureList";

            foreach (CultureInfo culture in setupData.cultureListGood)
            {
                SetupTest(contactModelListGood[0], culture, controllerAction);

                using (TransactionScope ts = new TransactionScope())
                {
                    TVItemModel tvItemModelSubsector = randomService.RandomTVItem(TVTypeEnum.Subsector);

                    Assert.AreEqual("", tvItemModelSubsector.Error);

                    TVItemModel tvItemModelMunicipality = tvItemService.PostAddChildTVItemDB(tvItemModelSubsector.TVItemID, "Unique Municipality Name", TVTypeEnum.Municipality);

                    Assert.AreEqual("", tvItemModelMunicipality.Error);

                    TVItemModel tvItemModelInfrastructure = tvItemService.PostAddChildTVItemDB(tvItemModelMunicipality.TVItemID, randomService.RandomString("Infra ", 20), TVTypeEnum.Infrastructure);

                    Assert.AreEqual("", tvItemModelInfrastructure.Error);

                    InfrastructureModel infrastructureModelNew = new InfrastructureModel();
                    infrastructureModelNew.InfrastructureTVItemID = tvItemModelInfrastructure.TVItemID;
                    infrastructureModelNew.InfrastructureTVText   = tvItemModelInfrastructure.TVText;
                    FillInfrastructureModel(infrastructureModelNew);

                    InfrastructureModel infrastructureModelRet = infrastructureService.PostAddInfrastructureDB(infrastructureModelNew);

                    Assert.AreEqual("", infrastructureModelRet.Error);

                    string            Q = "!View/" + tvItemModelMunicipality.TVText + "|||" + tvItemModelMunicipality.TVItemID;
                    PartialViewResult partialViewResult = controller._infrastructureList(Q) as PartialViewResult;

                    URLModel urlModel = (URLModel)partialViewResult.ViewBag.URLModel;
                    Assert.IsNotNull(partialViewResult);
                    Assert.AreEqual(2, urlModel.TVTextList.Count);
                    Assert.AreEqual("!View", urlModel.TVTextList[0]);
                    Assert.AreEqual(tvItemModelMunicipality.TVText, urlModel.TVTextList[1]);
                    Assert.AreEqual(1, urlModel.TVItemIDList.Count);
                    Assert.AreEqual(tvItemModelMunicipality.TVItemID, urlModel.TVItemIDList[0]);
                    Assert.AreEqual(StartVarShow, urlModel.VariableShow);

                    List <TVItemModelInfrastructureTypeTVItemLinkModel> tvItemModelInfrastructureTypeTVItemLinkModelList = (List <TVItemModelInfrastructureTypeTVItemLinkModel>)partialViewResult.ViewBag.TVItemModelInfrastructureTypeTVItemLinkModelList;
                    Assert.IsNotNull(tvItemModelInfrastructureTypeTVItemLinkModelList);
                    Assert.AreEqual(1, tvItemModelInfrastructureTypeTVItemLinkModelList.Count);
                    Assert.AreEqual(tvItemModelInfrastructure.TVPath, tvItemModelInfrastructureTypeTVItemLinkModelList[0].TVItemModel.TVPath);
                    Assert.AreEqual(tvItemModelInfrastructure.TVText, tvItemModelInfrastructureTypeTVItemLinkModelList[0].TVItemModel.TVText);
                }
            }
        }
Пример #13
0
        private URLModel TurnAddressToURLModel()
        {
            URLModel mapModel = new URLModel
            {
                GDescription = AddressObject.GetDefaultText,
                URLType      = URIType.Map,
            };

            mapModel.MapLocation.Thoroughfare = AddressObject.GStreet;
            mapModel.MapLocation.Locality     = AddressObject.GCity;
            mapModel.MapLocation.AdminArea    = AddressObject.GState;
            mapModel.MapLocation.CountryName  = AddressObject.GCountry;

            return(mapModel);
        }
Пример #14
0
        public IActionResult Get(string shorturl)
        {
            URLModel urlModel = _urlService.GetShortURL(shorturl);

            if (urlModel != null)
            {
                _logger.LogInformation($"Acceso a Redirect de {urlModel.ShortURL} a {urlModel.LongURL}");
                _redirectService.SaveInfo(new RedirectModel()
                {
                    ShortURL = urlModel.ShortURL, LongURL = urlModel.LongURL
                });
                return(Redirect(urlModel.LongURL));
            }

            return(NotFound());
        }
Пример #15
0
        public async Task GetAttributes(string urllink)
        {
            URLModel uRLModel = new URLModel();

            uRLModel.url = urllink;

            var url = JsonConvert.SerializeObject(uRLModel);

            var content = new StringContent(url, Encoding.UTF8, "application/json");

            var response = _client.PostAsync(SENDURL, content).Result;

            var data = _client.GetStringAsync(GETURL).Result;

            _faceAttributes = JsonConvert.DeserializeObject(data);
        }
Пример #16
0
        public void HomeController__Home_Test()
        {
            foreach (CultureInfo culture in setupData.cultureListGood)
            {
                // Arrange
                controllerAction = "_Home";
                contactModel     = contactModelListGood[0];

                // Act
                SetupTest(contactModel, culture, controllerAction);

                using (TransactionScope ts = new TransactionScope())
                {
                    // Act
                    TVItemModel tvItemModelRoot = randomService.RandomTVItem(TVTypeEnum.Root);

                    // Assert
                    Assert.AreEqual("", tvItemModelRoot.Error);

                    // Act
                    //string Q = "!Home";
                    PartialViewResult partialViewResult = controller._Home() as PartialViewResult;

                    // Assert
                    URLModel urlModel = (URLModel)partialViewResult.ViewBag.URLModel;
                    Assert.IsNotNull(partialViewResult);
                    Assert.AreEqual(2, urlModel.TVTextList.Count);
                    Assert.AreEqual("!Home", urlModel.TVTextList[0]);
                    Assert.AreEqual(ServiceRes.AllLocations, urlModel.TVTextList[1]);
                    Assert.AreEqual(1, urlModel.TVItemIDList.Count);
                    Assert.AreEqual(tvItemModelRoot.TVItemID, urlModel.TVItemIDList[0]);
                    Assert.AreEqual(StartVarShow, urlModel.VariableShow);

                    TVItemModel tvItemModelRootRet = (TVItemModel)partialViewResult.ViewBag.TVItemModelRoot;
                    Assert.IsNotNull(tvItemModelRootRet);
                    Assert.AreEqual(tvItemModelRoot.TVItemID, tvItemModelRootRet.TVItemID);
                    Assert.AreEqual(tvItemModelRoot.TVPath, tvItemModelRootRet.TVPath);
                    Assert.AreEqual(ServiceRes.AllLocations, tvItemModelRootRet.TVText);

                    string BaseURL = (string)partialViewResult.ViewBag.BaseURL;

                    Assert.IsNotNull(partialViewResult);
                    List <ContactModel> adminContactModelList = (List <ContactModel>)partialViewResult.ViewBag.AdminContactModelList;
                    Assert.AreEqual(1, adminContactModelList.Count);
                }
            }
        }
Пример #17
0
        public void HomeController__View_Infrastructure_Test()
        {
            foreach (CultureInfo culture in setupData.cultureListGood)
            {
                // Arrange
                controllerAction = "_View";
                contactModel     = contactModelListGood[0];

                // Act
                SetupTest(contactModel, culture, controllerAction);

                using (TransactionScope ts = new TransactionScope())
                {
                    // Act
                    TVItemModel tvItemModelInfrastructure = randomService.RandomTVItem(TVTypeEnum.Municipality);

                    // Assert
                    Assert.AreEqual("", tvItemModelInfrastructure.Error);

                    // Act
                    TVItemModel tvItemModelMunicipality = tvItemService.GetParentTVItemModelWithTVItemIDForLocationDB(tvItemModelInfrastructure.TVItemID);

                    // Assert
                    Assert.AreEqual("", tvItemModelMunicipality.Error);

                    // Act
                    string            Q = "!View/" + tvItemModelInfrastructure.TVText + "|||" + tvItemModelInfrastructure.TVItemID;
                    PartialViewResult partialViewResult = controller._View(Q) as PartialViewResult;

                    // Assert
                    URLModel urlModel = (URLModel)partialViewResult.ViewBag.URLModel;
                    Assert.IsNotNull(partialViewResult);
                    Assert.AreEqual(2, urlModel.TVTextList.Count);
                    Assert.AreEqual("!View", urlModel.TVTextList[0]);
                    Assert.AreEqual(tvItemModelInfrastructure.TVText, urlModel.TVTextList[1]);
                    Assert.AreEqual(1, urlModel.TVItemIDList.Count);
                    Assert.AreEqual(tvItemModelInfrastructure.TVItemID, urlModel.TVItemIDList[0]);
                    Assert.AreEqual(StartVarShow, urlModel.VariableShow);

                    TVItemModel tvItemModel = (TVItemModel)partialViewResult.ViewBag.TVItemModelLocationCurrent;
                    Assert.IsNotNull(tvItemModel);
                    Assert.AreEqual(tvItemModelInfrastructure.TVItemID, tvItemModel.TVItemID);
                    Assert.AreEqual(tvItemModelInfrastructure.TVPath, tvItemModel.TVPath);
                    Assert.AreEqual(tvItemModelInfrastructure.TVText, tvItemModel.TVText);
                }
            }
        }
        /// <summary>
        /// Load zero or more url content xml elements into alist of url models.
        /// </summary>
        /// <param name="xmlData">
        /// the xElement containing the url references.
        /// </param>
        private OCURLModelCollection GetURLCollection(XElement xmlData)
        {
            OCURLModelCollection t = new OCURLModelCollection();

            // Run query
            var theERElement =
                from orElementEl
                in xmlData.Elements(ns + "url")
                select orElementEl;

            if (theERElement.Any())
            {
                HLinkHomeImageModel newHomeLink = new HLinkHomeImageModel
                {
                    HomeImageType = CommonEnums.HomeImageType.Symbol,
                    HomeSymbol    = CommonConstants.IconBookMark // TODO  Windows.UI.Xaml.Controls.Symbol.World,
                };

                // load event object references
                foreach (XElement theLoadORElement in theERElement)
                {
                    URLModel tt = new URLModel
                    {
                        Handle = "URL Collection",

                        HomeImageHLink = newHomeLink,

                        Priv = SetPrivateObject(GetAttribute(theLoadORElement.Attribute("priv"))),

                        GType = GetAttribute(theLoadORElement.Attribute("type")),

                        GHRef = GetUri(GetAttribute(theLoadORElement.Attribute("href"))),

                        GDescription = GetAttribute(theLoadORElement.Attribute("description")),
                    };

                    t.Add(tt);
                }
            }

            // Return sorted by the default text
            t.Sort(T => T.DeRef.GetDefaultText);

            return(t);
        }
Пример #19
0
        public void FileController__fileList_Test()
        {
            foreach (CultureInfo culture in setupData.cultureListGood)
            {
                controllerAction = "_fileList";
                contactModel     = contactModelListGood[0];

                SetupTest(contactModel, culture, controllerAction);

                using (TransactionScope ts = new TransactionScope())
                {
                    TVItemModel tvItemModel = tvItemService.GetRootTVItemModelDB();
                    Assert.AreEqual("", tvItemModel.Error);

                    string Q = "!View/All Location|||" + tvItemModel.TVItemID;

                    PartialViewResult partialViewResult = controller._fileList(Q) as PartialViewResult;
                    Assert.IsNotNull(partialViewResult);

                    URLModel urlModelRet = (URLModel)partialViewResult.ViewBag.URLModel;
                    Assert.IsNotNull(urlModelRet);

                    List <TVFileModel> tvFileModelList = (List <TVFileModel>)partialViewResult.ViewBag.TVFileModelList;
                    Assert.IsNotNull(tvFileModelList);

                    List <FilePurposeAndText> filePurposeAndTextList = (List <FilePurposeAndText>)partialViewResult.ViewBag.FilePurposeAndTextList;
                    Assert.IsNotNull(filePurposeAndTextList);

                    TVItemModel tvItemModelRet = (TVItemModel)partialViewResult.ViewBag.TVItemModel;
                    Assert.AreEqual("", tvItemModelRet.Error);

                    TVAuthEnum TVAuthRet = (TVAuthEnum)partialViewResult.ViewBag.TVAuth;
                    Assert.AreEqual(TVAuthEnum.Admin, TVAuthRet);

                    int NumberOfSampleRet = (int)partialViewResult.ViewBag.NumberOfSample;
                    Assert.AreEqual(30, NumberOfSampleRet);

                    bool IsShowMoreInfoRet = (bool)partialViewResult.ViewBag.IsShowMoreInfo;
                    Assert.IsFalse(IsShowMoreInfoRet);
                }
            }
        }
        /// <summary>
        /// Load zero or more url content xml elements into alist of url models.
        /// </summary>
        /// <param name="xmlData">
        /// the xElement containing the url references.
        /// </param>
        private HLinkURLModelCollection GetURLCollection(XElement xmlData)
        {
            HLinkURLModelCollection t = new HLinkURLModelCollection();

            // Run query
            IEnumerable <XElement> theERElement =
                from orElementEl
                in xmlData.Elements(ns + "url")
                select orElementEl;

            if (theERElement.Any())
            {
                foreach (XElement theLoadORElement in theERElement)
                {
                    URLModel tt = new URLModel
                    {
                        Priv = GetPrivateObject(theLoadORElement),

                        GType = GetAttribute(theLoadORElement.Attribute("type")),

                        GHRef = GetUri(GetAttribute(theLoadORElement.Attribute("href"))),

                        GDescription = GetAttribute(theLoadORElement.Attribute("description")),
                    };

                    tt.ModelItemGlyph.ImageType = CommonEnums.HLinkGlyphType.Symbol;

                    tt.ModelItemGlyph.Symbol = Constants.IconURL;

                    tt.HLinkKey = HLinkKey.NewAsGUID();

                    HLinkURLModel ttt = new HLinkURLModel
                    {
                        DeRef = tt
                    };

                    t.Add(ttt);
                }
            }

            return(t);
        }
Пример #21
0
        public void TVItemController__content_Test()
        {
            foreach (CultureInfo culture in setupData.cultureListGood)
            {
                // Arrange
                controllerAction = "_content";
                contactModel     = contactModelListGood[0];

                // Act
                SetupTest(contactModel, culture, controllerAction);

                using (TransactionScope ts = new TransactionScope())
                {
                    // Arrange
                    TVItemModel tvItemModelRoot = tvItemService.GetRootTVItemModelDB();
                    string      Q = "!View/" + tvItemModelRoot.TVText + "|||" + tvItemModelRoot.TVItemID;

                    // Act
                    PartialViewResult partialViewResult = controller._content(Q) as PartialViewResult;

                    // Assert
                    // Assert
                    URLModel urlModel = (URLModel)partialViewResult.ViewBag.URLModel;
                    Assert.IsNotNull(partialViewResult);
                    Assert.AreEqual(2, urlModel.TVTextList.Count);
                    Assert.AreEqual("!View", urlModel.TVTextList[0]);
                    Assert.AreEqual(tvItemModelRoot.TVText, urlModel.TVTextList[1]);
                    Assert.AreEqual(1, urlModel.TVItemIDList.Count);
                    Assert.AreEqual(tvItemModelRoot.TVItemID, urlModel.TVItemIDList[0]);
                    Assert.AreEqual(StartVarShow, urlModel.VariableShow);

                    TVItemModel tvItemModelLocationCurrent = (TVItemModel)partialViewResult.ViewBag.TVItemModelLocationCurrent;
                    Assert.IsNotNull(tvItemModelLocationCurrent);
                    Assert.AreEqual(1, tvItemModelLocationCurrent.TVItemID);

                    List <TabInfo> tabInfoList = (List <TabInfo>)partialViewResult.ViewBag.TabInfoList;
                    Assert.IsNotNull(tabInfoList);
                    Assert.AreEqual(2, tabInfoList.Count);
                }
            }
        }
        public ActionResult Index(SearchModel model)
        {
            SearchModel searchModel = new SearchModel();

            searchModel.URLModels = new List <URLModel>();


            System.Data.SqlClient.SqlConnection sqlConnection1 =
                new System.Data.SqlClient.SqlConnection(@"Data Source=(localdb)\ProjectsV13;Initial Catalog=master;Integrated Security=True;Connect Timeout=30;Encrypt=False;TrustServerCertificate=False;ApplicationIntent=ReadWrite;MultiSubnetFailover=False");
            sqlConnection1.Open();

            System.Data.SqlClient.SqlCommand cmd = new System.Data.SqlClient.SqlCommand("SELECT * FROM URLS", sqlConnection1);
            using (SqlDataReader reader = cmd.ExecuteReader())
            {
                while (reader.Read())
                {
                    var      RowID    = reader["ID"];
                    URLModel urlmodel = new URLModel();
                    urlmodel.Id = (Guid)RowID;
                    var RowURL = reader["URL"];
                    urlmodel.URL1 = ((string)RowURL);
                    var RowDesc = reader["Description"];
                    urlmodel.Description = ((string)RowDesc);
                    searchModel.URLModels.Add(urlmodel);
                }
            }

            if (!String.IsNullOrEmpty(model.searchtext))
            {
                var caseSensitivity = model.isCaseSensitive ? StringComparison.Ordinal : StringComparison.OrdinalIgnoreCase;

                var filteredResults = searchModel.URLModels
                                      .Where(u => u.Description.Contains(model.searchtext,
                                                                         caseSensitivity));

                searchModel.URLModels = filteredResults.ToList();
            }

            return(View(searchModel));
        }
        public URLModel Create(URLModel newUrlDoc)
        {
            try
            {
                _urls.InsertOne(newUrlDoc);
            }
            catch (MongoWriteException e)
            {
                if (e.ToString().Contains("unique_url"))
                {
                    throw new DuplicateUrlException(newUrlDoc.OriginalURL);
                }
                if (e.ToString().Contains("unique_hash"))
                {
                    throw new DuplicateHashException(newUrlDoc.ShortURL);
                }

                throw new MongoException("Unable to insert");
            }

            return(newUrlDoc);
        }
Пример #24
0
        public ShortUrlResponse SaveURL(ShortURLRequest urlModel)
        {
            URLModel exitingUrl = _urlRepository.GetURLByLongUrl(urlModel.LongURL);

            if (exitingUrl != null)
            {
                return(new ShortUrlResponse {
                    Model = exitingUrl, Success = true, Message = "Se encontro una URL"
                });
            }
            else
            {
                URLModel savedModel = _urlRepository.SaveUrl(URLMapper.MapRequestModelToDBModel(urlModel));

                return(new ShortUrlResponse
                {
                    Model = savedModel,
                    Success = true,
                    Message = "URL guardada"
                });
            }
        }
Пример #25
0
        public int AddURL(URLModel url, string host, int port, string sessionUserId)
        {
            int lastId;

            UrlRepository.Add(url);
            if (!UrlIsValid(url.LongURL))
            {
                url.LongURL = "http://" + url.LongURL;
            }
            SaveURL();
            lastId = AddShortenedURLToLast(host, port);
            SaveURL();
            if (!string.IsNullOrEmpty(sessionUserId))
            {
                var tmpUserID     = Convert.ToInt32(sessionUserId);
                var userFoundById = UserRepository.GetWhere(x => x.Id == tmpUserID).FirstOrDefault();

                UserRepository.Update(userFoundById);
                userFoundById.URLs.Add(url);
                UnitOfWork.Commit();
            }
            return(lastId);
        }
Пример #26
0
        public ActionResult URLForm(ShortnerViewModel shortnerViewModel)
        {
            int lastId;

            if (ModelState.IsValid)
            {
                URLModel newModel = new URLModel
                {
                    LongURL    = shortnerViewModel.SingleURL.LongURL,
                    ClickCount = 0
                };
                lastId = ShortnerService.AddURL(newModel, HttpContext.Request.Url.Host, HttpContext.Request.Url.Port, Session["UserID"].ToString());
                if (string.IsNullOrEmpty(Session["UserID"].ToString()))
                {
                    CookieController.AddToCookie($".{lastId}");
                }
                ShortnerService.SaveURL();
            }
            else
            {
                ModelState.AddModelError("", "");
            }
            return(RedirectToAction("Index", "Home"));
        }
Пример #27
0
        public IActionResult AdvanceSearch([FromForm] string[] nots, [FromForm] string[] selects, [FromForm] string[] inputs)
        {
            Dictionary <string, string> selectsNames = new Dictionary <string, string>();

            selectsNames.Add("Sequence name", "name");
            selectsNames.Add("Genbank id", "genbank");
            selectsNames.Add("Journal", "journal");
            selectsNames.Add("Article", "article");
            selectsNames.Add("Taxon", "taxon");
            selectsNames.Add("Species", "species");

            string url = "";

            for (int i = 0; i < selects.Length; i++)
            {
                url += (url == "") ? "/api/sequences?" : "&";
                url += selectsNames[selects[i]] + "=" + HttpUtility.UrlPathEncode(inputs[i]) + "&" + selectsNames[selects[i]] + "=";
                url += nots[i] == "off" ? "true" : "false";
            }

            URLModel result = new URLModel(url);

            return(View("SearchResults", result));
        }
Пример #28
0
 public bool Run(URLModel urlReqest)
 {
     MakeRequestAsync(urlReqest);
     return(true);
 }
        public ActionResult Index()
        {
            URLModel url = new URLModel();

            return(View(url));
        }
Пример #30
0
        public async Task <JsonResult> Post([FromBody] URLModel value)
        {
            if (ModelState.IsValid)
            {
                string accountID = "";
                try
                {
                    string authHeader = HttpContext.Request.Headers["Authorization"];
                    if (!string.IsNullOrEmpty(authHeader))
                    {
                        bool isHeaderValid = HeaderAuthorizationMiddleware.ValidateCredentials(authHeader, _context);
                        if (isHeaderValid)
                        {
                            var user = _context.Users.SingleOrDefault(s => s.Token == authHeader);
                            _model.AccountId = user.AccountId;
                            accountID        = user.AccountId;
                        }
                        else
                        {
                            var jsonResult = new { error = "Invalid user!" };
                            return(new JsonResult(jsonResult));
                        }
                    }
                    else
                    {
                        var jsonResult = new { error = "Unautorized user!" };
                        return(new JsonResult(jsonResult));
                    }
                }
                catch (Exception e)
                {
                    var jsonResult = new { error = "Authorization error! " + e.Message };
                    return(new JsonResult(jsonResult));
                }



                value.RedirectURL = CheckURL.FormatUrl(value.RedirectURL, true);
                if (value.RedirectURL.Length > 5)
                {
                    var ExistingURL = _context.URL.SingleOrDefault(s => s.RedirectURL == value.RedirectURL && s.AccountId == accountID);
                    if (ExistingURL != null)
                    {
                        var jsonResult = new { shortUrl = ExistingURL.ShortCode };
                        return(new JsonResult(jsonResult));
                    }

                    var i = await _check.Check(value.RedirectURL);

                    if (i == true)
                    {
                        try
                        {
                            int nextId = 1;

                            int?next = _context.URL.Max(u => (int?)u.ID);
                            if (next != null)
                            {
                                nextId = (int)next + 1;
                            }

                            //_model.ShortCode = _settings.AppUrl + ShorterURL.Encode(nextId);
                            _model.ShortCode    = getPath(HttpContext) + ShorterURL.Encode(nextId);
                            _model.RedirectURL  = value.RedirectURL;
                            _model.RedirectType = value.RedirectType;

                            _context.URL.Add(_model);
                            if (_context.SaveChanges() > 0)
                            {
                                var jsonResult = new { shortUrl = _model.ShortCode };
                                return(new JsonResult(jsonResult));
                            }
                            else
                            {
                                var jsonResult = new { error = "Save model error" };
                                return(new JsonResult(jsonResult));
                            }
                        }
                        catch
                        {
                            var jsonResult = new { error = "Save model error" };
                            return(new JsonResult(jsonResult));
                        }
                    }
                    else
                    {
                        var jsonResult = new { error = "URL Verification Error" };
                        return(new JsonResult(jsonResult));
                    }
                }

                var jsonRErroresult = new { error = "Invalid or Nonexistent RedirectURL Error" };
                return(new JsonResult(jsonRErroresult));
            }
            else
            {
                var jsonResult = new { error = "Invalid model Error" };
                return(new JsonResult(jsonResult));
            }
        }