Beispiel #1
0
        public void MessageFromSite(SendMessageVM model, MailAddress to,
                                    MailAddress copy = null)
        {
            var isRus = Linguistics.IsRussian(model.Title) || Linguistics.IsRussian(model.Message);

            model.Title = "[Сообщение с сайта]" + model.Title;
            if (!model.Email.IsEmpty())
            {
                model.Title += ". От " + model.Email;
            }
            if (!model.SenderName.IsEmpty())
            {
                model.Message += Br + model.SenderName.Tag("strong");
            }
            var copyList = copy == null ? new MailAddress[0]: new[] { copy };

            if (isRus)
            {
                Send(info, to, model.Message, model.Title, copyList);
            }
            else
            {
                Send(info, ptolochko, model.Message, "[FILTER]" + model.Title);
            }
        }
Beispiel #2
0
        public ActionResult News()
        {
            var news = NewsService.GetAll().IsActive().OrderByDescending(n => n.PublishDate)
                       .Take(CommonConst.NewsCount);
            var feed =
                new SyndicationFeed("Новости www.specialist.ru",
                                    "Новости www.specialist.ru",
                                    Request.Url,
                                    "newsfeed",
                                    news.First().PublishDate);
            var items = new List <SyndicationItem>();

            foreach (var newsItem in news)
            {
                var href = RootUrl + Url.Action <SiteNewsController>(c =>
                                                                     c.Details(newsItem.NewsID,
                                                                               Linguistics.UrlTranslite(newsItem.Title))) + GetRssUtmPart("news");
                var item =
                    new SyndicationItem(newsItem.Title,
                                        newsItem.ShortDescription,
                                        new Uri(href),
                                        newsItem.NewsID.ToString(),
                                        newsItem.PublishDate);
                items.Add(item);
            }

            feed.Items = items;
            return(FeedOrChrome(feed));
        }
Beispiel #3
0
 public static string AdviceLink2(this HtmlHelper helper, Advice advice)
 {
     return(helper.ActionLink <CenterController>(
                sc => sc.Advice(advice.AdviceID,
                                Linguistics.UrlTranslite(advice.Name)),
                advice.Name).ToString());
 }
Beispiel #4
0
        public static TagDiv Tabs(List <Tuple <string, object> > items)
        {
            var head = H.ul[items.Select((x, i) => H.li[H.Anchor("#" + Linguistics.UrlTranslite(x.Item1), x.Item1)
                                                        .Data("toggle", "tab")].Class(i == 0 ? "active" : ""))].Class("nav nav-tabs");
            var body = H.Div("tab-content")[items.Select((x, i) => H.Div("tab-pane" + (i == 0 ? " active" : "")).Id(Linguistics.UrlTranslite(x.Item1))[x.Item2])];

            return(H.div[head, body]);
        }
Beispiel #5
0
        public static object Tabs(IEnumerable <string> names, params object[] contents)
        {
            var ids = names.Select(s => "tab-" + Linguistics.UrlTranslite(s) + Guid.NewGuid().ToString("N")).ToList();

            return(div.Class("ui-tab-control")[
                       ul[names.Select((x, i) => li[a.Href("#" + ids[i])[x]])],
                       contents.Select((x, i) => ids.Count > i ? div.Id(ids[i])[x] : null)]);
        }
Beispiel #6
0
 public static TagA NewsAnchor(this UrlHelper url, News news,
                               string title = null)
 {
     if (title.IsEmpty())
     {
         title = news.Title ?? "Читать новость";
     }
     return(url.Link <SiteNewsController>(
                sc => sc.Details(news.NewsID, Linguistics.UrlTranslite(news.Title)),
                title));
 }
Beispiel #7
0
        public static string Tabs(IEnumerable <string> names, object [] contents,
                                  bool useHash = false, int tabContentType = 0, int?activeTab = null)
        {
            var isScript = !activeTab.HasValue;
            var result   =
                "<div class='block_chamfered_content'>" +
                ChamBegin() + "<div class='{1} {0}'>"
                .FormatWith(useHash ? "use-hash" : "", isScript ? "tabs-control" : "");
            var tabs     = "<ul class='bookmarks'>";
            var nameList = names.ToList();

            for (int i = 0; i < nameList.Count; i++)
            {
                var name = nameList[i];
                if (name == null)
                {
                    continue;
                }
                string link;

                if (isScript)
                {
                    var translit = Linguistics.UrlTranslite(name);

                    link = "<a href='#{0}' rel='tab-{0}'>{1}</a>".FormatWith(translit,
                                                                             name);
                }
                else
                {
                    link = name;
                }

                var tab = "<li class='{0}'>{1}</li>"
                          .FormatWith(!isScript && i == activeTab ? "active" : "", link);
                tabs += tab;
            }
            tabs   += "</ul>";
            result += tabs;
            names.ForEach((name, i) =>
            {
                var translit = Linguistics.UrlTranslite(name);
                result      += "<div class='tab-{0} tab_content{2}' {1}>"
                               .FormatWith(translit, Htmls.DisplayNone(!IsIe6() && isScript),
                                           tabContentType == 0 ? "" : tabContentType.ToString());
                if (i < contents.Length)
                {
                    result += contents[i];
                }
                result += "</div>";
            });

            return(result + "</div>" + BlockEnd() + "</div>");
        }
Beispiel #8
0
        public ActionResult UserTestCert(int id, string name)
        {
            var userTest = UserTestService.GetByPK(id);
            var isEng    = true;

            var certName = EntityUtils.GetTestCertName(isEng, userTest);
            var user     = userTest.User;
            var userName = name ?? (isEng
                                ? user.EngFullName ?? Linguistics.Translite(user.LastName + " " + user.FirstName, true)
                                : user.FullName);

            return(View((string)"TestCert", (object)Tuple.New(userName, certName, userTest)));
        }
    // Use this for initialization
    void Start()
    {
        int iter = 5;

        for (int j = 0; j < iter; j++)
        {
            List <string> words = Linguistics.GenerateWordsBasic(5);
            for (int i = 0; i < words.Count; i++)
            {
                words[i] = char.ToUpper(words[i][0]) + words[i].Substring(1).ToLower();
            }
            Debug.Log(string.Join(",", words.ToArray()));
        }
    }
Beispiel #10
0
        public ActionResult TestCertInfo()
        {
            var user = UserService.GetByPK(User.UserID);

            if (user.EngFullName.IsEmpty())
            {
                user.EngFullName = Linguistics.Translite(user.LastName + " " + user.FirstName, true);
            }
            var userAddress = user
                              .UserAddresses.FirstOrDefault();

            if (userAddress == null)
            {
                userAddress = new UserAddress {
                    CountryID = Countries.Russian
                }
            }
            ;
            var currentOrder = OrderService.GetCurrentOrder();

            if (currentOrder == null)
            {
                return(RedirectToCart());
            }
            var isEngCert = currentOrder.OrderDetails.Any(x =>
                                                          _.List(TestCertLang.Eng, TestCertLang.RusEng).Contains(x.Params.Lang));
            var isPaper = currentOrder.OrderDetails.Any(x =>
                                                        x.Params.Type == TestCertType.Papper);
            var model = new TestCertInfoVM {
                Countries   = DictionariesService.GetCountries(),
                UserAddress = userAddress,
                User        = user,
                IsEngCert   = isEngCert,
                IsPaper     = isPaper
            };

            if (!isEngCert && !isPaper)
            {
                return(RedirectToAction(() => Contract()));
            }
            return(View(model));
        }
Beispiel #11
0
        public ActionResult Details(int?newsID, string title)
        {
            if (newsID == null)
            {
                return(null);
            }
            var news = NewsService.GetByPK(newsID);

            if (news == null || !news.IsActive)
            {
                return(null);
            }
            var currentTitle = Linguistics.UrlTranslite(news.Title);

            if (title != currentTitle)
            {
                return(new RedirectResult(Url
                                          .Action <SiteNewsController>(
                                              c => c.Details(newsID, currentTitle)), true));
            }

            GroupRepository.LoadWith(x => x.GroupCalc);
            var seminar = GroupRepository.GetAll()
                          .SeminarsFilter()
                          .OrderByDescending(x => x.DateBeg)
                          .FirstOrDefault(x => x.UrlName == "/news/" + newsID);

            if (seminar != null)
            {
                seminar.Complex = seminar.Complex_TC.GetOrDefault(x => ComplexService.List()[x]);
            }
            var model =
                new NewsVM
            {
                News    = news,
                Seminar = seminar
            };

            return(MView(Views.SiteNews.Details, model));
        }
Beispiel #12
0
    public static string LovelyWeather(Citizen citizen)
    {
        RefreshVoice(citizen);

        //Hello, PC! Lovely weather, isn't it?
        string lovelyWeather = string.Format(
            (voice.salutation == "" ?
             (voice.address == "" ? "{3}" : Linguistics.Capitalize(voice.address) + "{2} {3}") :
             "{0}" + (voice.address == "" ? "{2}" : ", {1}{2}") + " {3}"),
            Linguistics.Capitalize(voice.salutation),
            voice.address,
            (Linguistics.Assert(voice.assertion) ? "!" : "?"),
            (Linguistics.Assert(voice.positivity) ?
             (Linguistics.Assert(voice.assertion) ?
              (string.Format("The weather is {0} {1}!", voice.desirable, voice.now)) : (Linguistics.Capitalize(voice.desirable) + " weather, isn't it?")
             ) :
             (Linguistics.Assert(voice.assertion) ?
              (string.Format("The weather isn't {0} {1}.", voice.undesirable, voice.now)) : ("Not " + voice.undesirable + " weather, is it?")
             )
            )
            );

        return(lovelyWeather);
    }
Beispiel #13
0
 public static string LinkAddFragmentCyrillic(this string html, string fragment)
 {
     return(html.LinkAddFragment(Linguistics.UrlTranslite(fragment)));
 }
Beispiel #14
0
        public ActionResult Advices()
        {
            var advices = AdviceService.GetAll().IsActive()
                          .OrderByDescending(n => n.AdviceID)
                          .Take(CommonConst.AdviceCount);
            var url = RootUrl +
                      Url.Action <RssController>(c => c.Advices());
            var feed =
                new SyndicationFeed("Советы www.specialist.ru",
                                    "Советы www.specialist.ru",
                                    new Uri(url),
                                    "advicesfeed",
                                    advices.FirstOrDefault()
                                    .GetOrDefault(x => x.CreateDate));
            var items = new List <SyndicationItem>();

            foreach (var advice in advices)
            {
                var item =
                    new SyndicationItem(advice.Name,
                                        StringUtils.GetShortText(advice.Description),
                                        new Uri(RootUrl + Url.Action <CenterController>(c =>
                                                                                        c.Advice(advice.AdviceID,
                                                                                                 Linguistics.UrlTranslite(advice.Name)))),
                                        advice.AdviceID.ToString(),
                                        advice.CreateDate);
                items.Add(item);
            }

            feed.Items = items;
            return(FeedOrChrome(feed));
        }
Beispiel #15
0
 public static TagA VideoLink(this UrlHelper helper, Video video)
 {
     return(helper.Center().Video(video.VideoID,
                                  Linguistics.UrlTranslite(video.Name), video.Name));
 }
Beispiel #16
0
        private List <string> GetUrls(UrlHelper urlHelper)
        {
            var root       = RootUrl;
            var context    = new SpecialistDataContext();
            var webcontext = new SpecialistWebDataContext();
            var urls       = new List <string>();

            urls.AddRange(
                context.Courses.IsActive().Where(x => x.UrlName != null).Where(x => x.IsTrack != true)
                .OrderByDescending(c => c.Course_ID).Select(x => x.UrlName).ToList()
                .Select(x => root + urlHelper.Action <CourseController>(c => c.Details(x)))
                );

            urls.AddRange(
                webcontext.News.IsActive().OrderByDescending(n => n.PublishDate).Take(50)
                .Select(x => new { x.NewsID, x.Title }).ToList()
                .Select(x => root + urlHelper
                        .Action <SiteNewsController>(c => c.Details(x.NewsID
                                                                    , Linguistics.UrlTranslite(x.Title))))
                );
            urls.AddRange(
                webcontext.Sections.IsActive().Select(x => x.UrlName).ToList()
                .Select(x => root + urlHelper.Action <SectionController>(c => c.Details(x)))
                );
            if (!CommonConst.IsMobile)
            {
                urls.AddRange(
                    context.Vendors.IsActive().Select(x => x.UrlName).ToList()
                    .Select(x => root + SimplePages.FullUrls.Vendor + x)
                    );


                urls.AddRange(
                    context.Professions.IsActive().Select(x => x.UrlName).ToList()
                    .Select(x => root + urlHelper.Action <ProfessionController>(c => c.Details(x)))
                    );

                urls.AddRange(
                    webcontext.Products.IsActive().Select(x => x.UrlName + UrlName.ProductPostfix).ToList()
                    .Select(x => root + urlHelper.Action <ProductController>(c => c.Details(x)))
                    );


                urls.AddRange(
                    webcontext.SiteTerms.IsActive().Select(x => x.UrlName).ToList()
                    .Select(x => root + urlHelper.Action <DictionaryController>(c => c.Definition(x)))
                    );



                urls.AddRange(
                    webcontext.SimplePages.ToList().Select(x => x.Url)
                    .Select(x => root + x)
                    );

                urls.AddRange(
                    context.Certifications.IsActive().Select(x => x.UrlName).ToList()
                    .Select(x => root + urlHelper.Action <CertificationController>(
                                c => c.Details(x)))
                    );
                urls.AddRange(
                    context.Exams.Where(x => x.Available).Select(x => x.Exam_TC).ToList()
                    .Select(x => root + urlHelper.Action <ExamController>(c => c.Details(x)))
                    );
            }

            return(urls);
        }
Beispiel #17
0
 private TagA NewsAnchor(News n, string title = null)
 {
     title = title ?? n.Title;
     return(Anchor("/news/" + n.NewsID +
                   "/" + Linguistics.UrlTranslite(n.Title), title).AbsoluteHref());
 }