public ActionResult Show(string sitename, int querySetId, int revisionId, string slug)
        {
            Site site;

            if (!TryGetSite(sitename, out site))
            {
                return(site == null ? (ActionResult)PageNotFound() : RedirectPermanent(string.Format("/{0}/revision/{1}/{2}{3}{4}",
                                                                                                     site.TinyName.ToLower(), querySetId, revisionId, slug.HasValue() ? "/" + slug : "", Request.Url.Query
                                                                                                     )));
            }

            Site = site;
            var querySet = QueryUtil.GetFullQuerySet(querySetId);

            if (querySet == null)
            {
                return(PageNotFound());
            }

            var revision = querySet.Revisions.FirstOrDefault(r => r.Id == revisionId);

            if (revision == null)
            {
                return(PageNotFound());
            }

            return(ShowCommon(revision, slug, false));
        }
Пример #2
0
        public ActionResult Edit(string sitename, int querySetId)
        {
            bool foundSite = SetCommonQueryViewData(sitename);

            if (!foundSite)
            {
                return(PageNotFound());
            }

            SetHeader("Editing Query");

            QuerySet querySet = QueryUtil.GetFullQuerySet(querySetId);

            if (querySet == null)
            {
                return(PageNotFound());
            }

            ViewData["query_action"] = "save/" + Site.Id + "/" + querySetId;
            ViewData["HelperTables"] = HelperTableCache.GetCacheAsJson(Site);

            return(View("Editor", new ViewModel.QuerySetViewModel
            {
                Site = Site,
                Revisions = querySet.Revisions,
                CurrentRevision = querySet.CurrentRevision,
                QuerySet = querySet
            }));
        }
        public ActionResult Edit(string sitename, string operation, int querySetId, string slug)
        {
            Site site;

            if (!TryGetSite(sitename, out site))
            {
                return(site == null ? (ActionResult)PageNotFound() : RedirectPermanent(string.Format("/{0}/query/{1}/{2}{3}",
                                                                                                     site.TinyName.ToLower(), operation, querySetId, slug.HasValue() ? "/" + slug : ""
                                                                                                     )));
            }

            SetCommonQueryViewData(site, "Editing Query");

            QuerySet querySet = QueryUtil.GetFullQuerySet(querySetId);

            if (querySet == null)
            {
                return(PageNotFound());
            }

            ViewData["query_action"] = "save/" + Site.Id + "/" + querySetId;
            ViewData["HelperTables"] = HelperTableCache.GetCacheAsJson(Site);

            return(View("Editor", new ViewModel.QuerySetViewModel
            {
                Site = Site,
                Revisions = querySet.Revisions,
                CurrentRevision = querySet.CurrentRevision,
                QuerySet = querySet
            }));
        }
Пример #4
0
        public ActionResult ShowLatest(string sitename, int querySetId, string slug)
        {
            Site = GetSite(sitename);
            if (Site == null)
            {
                return(PageNotFound());
            }

            var querySet = QueryUtil.GetFullQuerySet(querySetId);

            if (querySet == null)
            {
                return(PageNotFound());
            }

            var revision = querySet.CurrentRevision;

            return(ShowCommon(revision, slug, true));
        }
        public ActionResult ShowLatest(string sitename, int querySetId, string slug)
        {
            Site site;

            if (!TryGetSite(sitename, out site))
            {
                return(site == null ? (ActionResult)PageNotFound() :
                       RedirectPermanent($"/{site.TinyName.ToLower()}/query/{querySetId}{(slug.HasValue() ? "/" + slug : "")}{Request.Url.Query}"));
            }

            Site = site;
            var querySet = QueryUtil.GetFullQuerySet(querySetId);

            if (querySet == null)
            {
                return(PageNotFound());
            }

            var revision = querySet.CurrentRevision;

            return(ShowCommon(revision, slug, true));
        }
Пример #6
0
        public ActionResult Show(string sitename, int querySetId, int revisionId, string slug)
        {
            Site = GetSite(sitename);

            if (Site == null)
            {
                return(PageNotFound());
            }

            var querySet = QueryUtil.GetFullQuerySet(querySetId);

            if (querySet == null)
            {
                return(PageNotFound());
            }
            var revision = querySet.Revisions.FirstOrDefault(r => r.Id == revisionId);

            if (revision == null)
            {
                return(PageNotFound());
            }

            return(ShowCommon(revision, slug, false));
        }