Example #1
0
        public ActionResult Act(int docPrefLangId, string docNumber, string toPar, bool lastCons)
        {
            docNumber = docNumber.Replace("_", "/");

            // Временно всички hudoc сочат към външния адрес!
            if (docNumber.IndexOf("HUDOC-") > -1 && docNumber != "HUDOC-39954/08")
            {
                if (!this.Response.IsRequestBeingRedirected)
                {
                    this.Response.Redirect("http://hudoc.echr.coe.int/eng#{\"appno\":[\"" + docNumber.Replace("HUDOC-", "") + "\"]}", true);
                }
            }

            Document doc = Doc.GetDocByDocNumber(docNumber, docPrefLangId, this.UserData.UserId);
            string   eid = null;
            string   num = null;

            if (!String.IsNullOrEmpty(toPar) && doc != null)
            {
                Dictionary <string, string> d = Doc.GetEIDfromToPar(doc.DocLangId, toPar);
                if (d != null)
                {
                    eid = d["eid"];
                    num = d["num"];
                }
            }

            if (lastCons)
            {
                int?docLangId = Doc.GetLastConsDocLangId(docNumber, docPrefLangId, this.Language.Id, this.UserData.UserId, true);
                if (docLangId.HasValue)
                {
                    doc = Doc.GetDocument(docLangId.Value);
                }
                if (!String.IsNullOrEmpty(eid))
                {
                    eid = Doc.CheckEID(doc.DocLangId, eid, num);
                }
            }


            if (doc != null)
            {
                string url = WebAppHelper.AppRootFolder + "/Doc/" + ((doc.DocType == 1) ? "CourtAct" : "LegalAct") + "/" + doc.DocLangId;

                if (!String.IsNullOrEmpty(eid))
                {
                    url += "#" + eid;
                }

                if (!this.Response.IsRequestBeingRedirected)
                {
                    this.Response.Redirect(url);
                }

                return(null);
            }
            else
            {
                if (docNumber.IndexOf("HUDOC-") > -1)
                {
                    if (!this.Response.IsRequestBeingRedirected)
                    {
                        this.Response.Redirect("http://hudoc.echr.coe.int/eng#{\"appno\":[\"" + docNumber.Replace("HUDOC-", "") + "\"]}", true);
                    }
                }

                else // CELEX
                {
                    if (!this.Response.IsRequestBeingRedirected)
                    {
                        this.Response.Redirect(Doc.CreateEurLexLink(docNumber, docPrefLangId), true);
                    }
                }

                return(null);
            }
        }