예제 #1
0
    public int CompareByFrequency(TransitTagWord left, TransitTagWord right)
    {
        if (left == right || left.Id == right.Id)
            return 0;

        if (Math.Min(left.Frequency, right.Frequency) < mMinFrequency || mMinFrequency == -1)
            mMinFrequency = Math.Min(left.Frequency, right.Frequency);

        if (Math.Max(left.Frequency, right.Frequency) > mMaxFrequency || mMaxFrequency == -1)
            mMaxFrequency = Math.Max(left.Frequency, right.Frequency);

        return mRandomSort.Next(-Count, Count);
    }
예제 #2
0
    public int CompareByFrequency(TransitTagWord left, TransitTagWord right)
    {
        if (left == right || left.Id == right.Id)
        {
            return(0);
        }

        if (Math.Min(left.Frequency, right.Frequency) < mMinFrequency || mMinFrequency == -1)
        {
            mMinFrequency = Math.Min(left.Frequency, right.Frequency);
        }

        if (Math.Max(left.Frequency, right.Frequency) > mMaxFrequency || mMaxFrequency == -1)
        {
            mMaxFrequency = Math.Max(left.Frequency, right.Frequency);
        }

        return(mRandomSort.Next(-Count, Count));
    }
예제 #3
0
    public void Page_Load()
    {
        gridManage.OnGetDataSource += new EventHandler(gridManage_OnGetDataSource);
        if (!IsPostBack)
        {
            TransitTagWord word = SessionManager.TagWordService.GetTagWordById(
                SessionManager.Ticket, RequestId);
            tagSubtitle.Text = string.Format("Who is talking about <b>\"{0}\"</b>?", Renderer.Render(word.Word));
            this.Title       = string.Format("Who is talking about \"{0}\"?", Renderer.Render(word.Word));
            gridManage_OnGetDataSource(this, null);
            gridManage.DataBind();

            SiteMapDataAttribute sitemapdata = new SiteMapDataAttribute();
            sitemapdata.Add(new SiteMapDataAttributeNode("People", Request, "AccountsView.aspx"));
            sitemapdata.Add(new SiteMapDataAttributeNode("Tags", Request, "TagWordsView.aspx"));
            sitemapdata.Add(new SiteMapDataAttributeNode(word.Word, Request.Url));
            StackSiteMap(sitemapdata);
        }
    }
예제 #4
0
 public int CreateOrUpdateTagWord(string ticket, TransitTagWord tagword)
 {
     return(WebServiceImpl <TransitTagWord, ManagedTagWord, TagWord> .CreateOrUpdate(
                ticket, tagword));
 }
예제 #5
0
    public void PromoteOrExclude(bool promote, object sender, EventArgs e)
    {
        List <string> promoted = new List <string>();
        List <string> demoted  = new List <string>();
        List <string> excluded = new List <string>();
        List <string> included = new List <string>();

        List <TransitTagWord> words = new List <TransitTagWord>();

        foreach (DataGridItem item in gridManage.Items)
        {
            switch (item.ItemType)
            {
            case ListItemType.AlternatingItem:
            case ListItemType.SelectedItem:
            case ListItemType.Item:
            case ListItemType.EditItem:
                bool item_checked = ((CheckBox)item.Cells[(int)Cells.checkbox].Controls[1]).Checked;
                int  item_id      = int.Parse(item.Cells[(int)Cells.id].Text);

                TransitTagWord tw = SessionManager.TagWordService.GetTagWordById(
                    SessionManager.Ticket, item_id);
                bool item_promote = ((promote && item_checked) || (!promote && !item_checked));
                if (item_promote)
                {
                    tw.Promoted = !tw.Promoted;
                    if (tw.Promoted)
                    {
                        tw.Excluded = false;                  // can't promote an excluded word
                    }
                    if (tw.Promoted)
                    {
                        promoted.Add(Render(tw.Word));
                    }
                    else
                    {
                        demoted.Add(Render(tw.Word));
                    }
                    words.Add(tw);
                }
                else if (listboxSelectType.SelectedValue == "New")
                {
                    // don't flip promoted or excluded words
                    tw.Excluded = !tw.Excluded;
                    if (tw.Excluded)
                    {
                        tw.Promoted = false;                  // can't promote an excluded word
                    }
                    if (tw.Excluded)
                    {
                        excluded.Add(Render(tw.Word));
                    }
                    else
                    {
                        included.Add(Render(tw.Word));
                    }
                    words.Add(tw);
                }
                break;
            }
        }

        foreach (TransitTagWord word in words)
        {
            SessionManager.CreateOrUpdate <TransitTagWord>(
                word, SessionManager.TagWordService.CreateOrUpdateTagWord);
        }

        StringBuilder sb = new StringBuilder();

        sb.Append(string.Format("{0} item{1} processed.<BR>", words.Count, words.Count != 1 ? "s" : string.Empty));
        if (promoted.Count > 0)
        {
            sb.AppendFormat("Promoted: {0}<BR>\n", string.Join(", ", promoted.ToArray()));
        }
        if (demoted.Count > 0)
        {
            sb.AppendFormat("Demoted: {0}<BR>\n", string.Join(", ", demoted.ToArray()));
        }
        if (included.Count > 0)
        {
            sb.AppendFormat("Included: {0}<BR>\n", string.Join(", ", included.ToArray()));
        }
        if (excluded.Count > 0)
        {
            sb.AppendFormat("Excluded: {0}<BR>\n", string.Join(", ", excluded.ToArray()));
        }
        noticeManage.HtmlEncode = false;
        noticeManage.Info       = sb.ToString();

        GetData(sender, e);
    }
예제 #6
0
 public int CreateOrUpdateTagWord(string ticket, TransitTagWord tagword)
 {
     return WebServiceImpl<TransitTagWord, ManagedTagWord, TagWord>.CreateOrUpdate(
         ticket, tagword);
 }