Example #1
0
 protected void Button_Unfollow_Click(object sender, EventArgs e)
 {
     string userID = (string)Session["userID"];
     string targetUserID = (string)Request.QueryString["id"];
     FollowsData follows = new FollowsData(MapPath("."));
     follows.RemoveFollow(userID, "user", targetUserID);
     ActivitiesData activities = new ActivitiesData(MapPath("."));
     activities.AddActivity("followUser", targetUserID, userID);
     ShowFollowingStatus();
 }
Example #2
0
 protected void Button_Follow_Click(object sender, EventArgs e)
 {
     string userID = (string)Session["userID"];
     string fontID = (string)Request.QueryString["id"];
     FollowsData follows = new FollowsData(MapPath("."));
     follows.AddFollow(userID, "font", fontID);
     ActivitiesData activities = new ActivitiesData(MapPath("."));
     activities.AddActivity("followFont", fontID, userID);
     ShowFollowing();
 }
Example #3
0
 protected void ShowFollowing()
 {
     FollowsData follows = new FollowsData(MapPath("."));
     UsersData users = new UsersData(MapPath("."));
     string fontID = (string)Request.QueryString["id"];
     if (follows.IsFollow((string)Session["userID"], "font", fontID))
     {
         Button_Follow.Enabled = false;
         Button_Unfollow.Enabled = true;
     }
     else
     {
         Button_Follow.Enabled = true;
         Button_Unfollow.Enabled = false;
     }
     var followers = follows.FindObjectIDs("font", fontID);
     foreach (var follower in followers)
     {
         Label_Followers.Text += "<div class=\"follows\">" +
             string.Format("<a href=\"user.aspx?id={0}\">{1}</a>", follower["userID"], users.FindUserID(follower["userID"])["userName"]) +
             "</div>";
     }
 }
Example #4
0
 protected void ShowFollows()
 {
     FollowsData follows = new FollowsData(MapPath("."));
     UsersData users = new UsersData(MapPath("."));
     string targetUserID = (string)Request.QueryString["id"];
     var hisFollowings = follows.FindUserIDs(targetUserID);
     foreach (var hisFollowing in hisFollowings)
     {
         string followingUserID = hisFollowing["objectID"];
         Label_Followings.Text += "<div class=\"follows\">" +
             string.Format("<a href=\"user.aspx?id={0}\">{1}</a>", followingUserID, users.FindUserID(followingUserID)["userName"]) +
             "</div>";
     }
     var hisFollowers = follows.FindObjectIDs("user", targetUserID);
     foreach (var hisFollower in hisFollowers)
     {
         string followerUserID = hisFollower["userID"];
         Label_Followers.Text += "<div class=\"follows\">" +
             string.Format("<a href=\"user.aspx?id={0}\">{1}</a>", followerUserID, users.FindUserID(followerUserID)["userName"]) +
             "</div>";
     }
 }
Example #5
0
 protected void ShowFollowingStatus()
 {
     FollowsData follows = new FollowsData(MapPath("."));
     if ((string)Session["userID"] == (string)Request.QueryString["id"])
     {
         Button_Follow.Visible = false;
         Button_Unfollow.Visible = false;
         return;
     }
     if (follows.IsFollow((string)Session["userID"], "user", (string)Request.QueryString["id"]))
     {
         Button_Follow.Enabled = false;
         Button_Unfollow.Enabled = true;
     }
     else
     {
         Button_Follow.Enabled = true;
         Button_Unfollow.Enabled = false;
     }
 }
Example #6
0
 protected void ShowActivities()
 {
     ActivitiesData activities = new ActivitiesData(MapPath("."));
     FollowsData follows = new FollowsData(MapPath("."));
     UsersData users = new UsersData(MapPath("."));
     FontsData fonts = new FontsData(MapPath("."));
     ImagesData images = new ImagesData(MapPath("."));
     var myFollowings = follows.FindUserIDs((string)Session["userID"]);
     List<Dictionary<string, string>> shownActivities = new List<Dictionary<string, string>>();
     foreach (var following in myFollowings)
     {
         Dictionary<string, string>[] thisActivities;
         switch (following["targetType"])
         {
             case "font":
                 thisActivities = activities.FindObjectIDs("font", following["objectID"]);
                 break;
             case "user":
                 thisActivities = activities.FindUserIDs(following["objectID"]);
                 break;
             default:
                 thisActivities = new Dictionary<string, string>[0];
                 break;
         }
         foreach (var thisActivity in thisActivities)
         {
             shownActivities.Add(thisActivity);
         }
     }
     Literal_Activities.Text = "";
     foreach (Dictionary<string, string> activity in shownActivities.ToArray().Reverse())
     {
         string targetUri;
         string targetName;
         string actionName;
         switch (activity["activityType"])
         {
             case "makeImage":
                 targetName = "文字 " + images.FindImageId(activity["objectID"])["imageName"];
                 targetUri = "char.aspx?id=" + activity["objectID"];
                 actionName = "作成";
                 break;
             case "editImage":
                 targetName = "文字 " + images.FindImageId(activity["objectID"])["imageName"];
                 targetUri = "char.aspx?id=" + activity["objectID"];
                 actionName = "編集";
                 break;
             case "makeFont":
                 targetName = "字体 " + fonts.FindFontID(activity["objectID"])["fontName"];
                 targetUri = "font.aspx?id=" + activity["objectID"];
                 actionName = "作成";
                 break;
             case "editFont":
                 targetName = "字体 " + fonts.FindFontID(activity["objectID"])["fontName"];
                 targetUri = "font.aspx?id=" + activity["objectID"];
                 actionName = "編集";
                 break;
             case "makeSentence":
                 targetName = "例文";
                 targetUri = "sentence.aspx?id=" + activity["objectID"];
                 actionName = "作成";
                 break;
             case "followFont":
                 targetName = "字体 " + fonts.FindFontID(activity["objectID"])["fontName"];
                 targetUri = "font.aspx?id=" + activity["objectID"];
                 actionName = "認知";
                 break;
             case "followUser":
                 targetName = "賢者 " + users.FindUserID(activity["objectID"])["userName"];
                 targetUri = "user.aspx?id=" + activity["objectID"];
                 actionName = "認知";
                 break;
             default:
                 targetName = "UMA";
                 targetUri = "index.aspx";
                 actionName = "UFO";
                 break;
         }
         string userID = activity["userID"];
         string userName = users.FindUserID(userID)["userName"];
         if (activity["activityType"] == "makeSentence")
         {
             var sentence = new SentencesData(MapPath(".")).FindSentenceID(activity["objectID"]);
             Literal_Activities.Text +=
                 "<a href=\"" + targetUri + "\">" +
                 PageKits.generateFontedContent(sentence["sentence"], sentence["fontID"]) +
                 "</a>";
         }
         Literal_Activities.Text +=
             "<div class=\"activity\">" +
             "<a href=\"user.aspx?id=" + userID + "\">" + userName + "さん</a>が" +
             "<a href=\"" + targetUri + "\">" + targetName + "</a>を" +
             actionName + "しました。" +
             "<span class=\"activityDate\">" + activity["activityDate"] + "</span>" +
             "</div>";
     }
 }