示例#1
0
        public void getfbFriendsGenderStats(dynamic data, dynamic profile, Guid userId)
        {
            FacebookStats           objfbStats     = new FacebookStats();
            FacebookStatsRepository objFBStatsRepo = new FacebookStatsRepository();
            int malecount   = 0;
            int femalecount = 0;

            foreach (var item in data["data"])
            {
                if (item["gender"] == "male")
                {
                    malecount++;
                }
                else if (item["gender"] == "female")
                {
                    femalecount++;
                }
            }
            objfbStats.EntryDate   = DateTime.Now;
            objfbStats.FbUserId    = profile["id"].ToString();
            objfbStats.FemaleCount = femalecount;
            objfbStats.Id          = Guid.NewGuid();
            objfbStats.MaleCount   = malecount;
            objfbStats.UserId      = userId;
            objfbStats.FanCount    = getfanCount(ref objfbStats);
            objFBStatsRepo.addFacebookStats(objfbStats);
        }
示例#2
0
        public void getfbFriendsGenderStatsForFanPage(dynamic profile, Guid userId, ref FacebookAccount objfbacnt)
        {
            FacebookStats           objfbStats     = new FacebookStats();
            FacebookStatsRepository objFBStatsRepo = new FacebookStatsRepository();

            //int malecount = 0;
            //int femalecount = 0;
            //foreach (var item in data["data"])
            //{
            //    if (item["gender"] == "male")
            //        malecount++;
            //    else if (item["gender"] == "female")
            //        femalecount++;
            //}
            objfbStats.EntryDate = DateTime.Now;
            objfbStats.FbUserId  = profile["id"].ToString();
            //objfbStats.FemaleCount = femalecount;
            objfbStats.Id = Guid.NewGuid();
            //objfbStats.MaleCount = malecount;
            objfbStats.UserId   = userId;
            objfbStats.FanCount = objfbacnt.Friends;
            //objfbStats.ShareCount = getShareCount();
            //objfbStats.CommentCount = getCommentCount();
            //objfbStats.LikeCount = getLikeCount();
            objFBStatsRepo.addFacebookStats(objfbStats);
            FacebookInsightStatsHelper objfbinshlpr = new FacebookInsightStatsHelper();
            string pId = profile["id"].ToString();

            //string pId = "329139457226886";
            objfbinshlpr.getPageImpresion(pId, userId, 7);
        }
示例#3
0
        public void getNewFriends(int days)
        {
            try
            {
                SocioBoard.Domain.User  user           = (User)Session["LoggedUser"];
                FacebookStatsRepository objfbStatsRepo = new FacebookStatsRepository();
                ArrayList arrFbStats = objfbStatsRepo.getAllFacebookStatsOfUser(user.Id, days);
                strFBArray = "[";
                int intdays = 1;

                // Get facebook page like ...
                FacebookAccountRepository ObjAcFbAccount = new FacebookAccountRepository();
                int TotalLikes = ObjAcFbAccount.getPagelikebyUserId(user.Id);

                foreach (var item in arrFbStats)
                {
                    Array temp = (Array)item;
                    strFBArray += int.Parse(temp.GetValue(3).ToString()) + int.Parse(temp.GetValue(4).ToString()) + ",";
                    //spanFbFriends.InnerHtml = (int.Parse(temp.GetValue(3).ToString()) + int.Parse(temp.GetValue(4).ToString())).ToString();
                    spanFbFriends.InnerHtml = (TotalLikes).ToString();
                    intdays++;
                }
                if (intdays < 7)
                {
                    for (int j = 0; j < 7 - intdays; j++)
                    {
                        strFBArray = strFBArray + "0,";
                    }
                }
                strFBArray = strFBArray.Substring(0, strFBArray.Length - 1) + "]";
                // strFBArray += "]";
            }
            catch (Exception Err)
            {
                Response.Write(Err.Message.ToString());
            }
        }
        public bool AddFacebookFriendsGender(string ProfileId, string FacebookUserId)
        {
            Api.Myfashionmarketer.Models.FacebookAccount _FacebookAccount = new FacebookAccount();
            Domain.Myfashion.Domain.FacebookAccount      _facebookAccount = new Domain.Myfashion.Domain.FacebookAccount();

            _facebookAccount = (Domain.Myfashion.Domain.FacebookAccount)(new System.Web.Script.Serialization.JavaScriptSerializer().Deserialize(_FacebookAccount.getFacebookAccountDetailsById(ProfileId, FacebookUserId), typeof(Domain.Myfashion.Domain.FacebookAccount)));

            if (string.IsNullOrEmpty(_facebookAccount.AccessToken))
            {
                _facebookAccount = new Domain.Myfashion.Domain.FacebookAccount();
                Api.Myfashionmarketer.Models.FacebookAccountRepository _FacebookAccountRepository = new FacebookAccountRepository();

                System.Collections.ArrayList lstFacebookAccounts = _FacebookAccountRepository.getAllFacebookAccounts();

                Random _random = new Random();
                var    rnum    = _random.Next(0, lstFacebookAccounts.Count - 1);
                _facebookAccount = (Domain.Myfashion.Domain.FacebookAccount)lstFacebookAccounts[rnum];
            }
            int malecount   = 0;
            int femalecount = 0;

            Domain.Myfashion.Domain.FacebookStats objfbStats = new Domain.Myfashion.Domain.FacebookStats();
            FacebookStatsRepository objFBStatsRepo           = new FacebookStatsRepository();

            FacebookClient fb = new FacebookClient();

            fb.AccessToken = _facebookAccount.AccessToken;
            try
            {
                dynamic data = fb.Get("v2.0/me/friends?fields=gender");

                //dynamic data, dynamic profile, Guid userId


                foreach (var item in data["data"])
                {
                    try
                    {
                        if (item["gender"] == "male")
                        {
                            malecount++;
                        }
                        else if (item["gender"] == "female")
                        {
                            femalecount++;
                        }
                    }
                    catch (Exception ex)
                    {
                        logger.Error(ex.Message);
                        logger.Error(ex.StackTrace);
                    }
                }
            }
            catch (Exception ex)
            {
                logger.Error(ex.Message);
                logger.Error(ex.StackTrace);
                return(false);
            }
            objfbStats.EntryDate   = DateTime.Now;
            objfbStats.FbUserId    = _facebookAccount.FbUserId;//profile["id"].ToString();
            objfbStats.FemaleCount = femalecount;
            objfbStats.Id          = Guid.NewGuid();
            objfbStats.MaleCount   = malecount;
            objfbStats.UserId      = _facebookAccount.UserId;
            objfbStats.FanCount    = getfanCount(objfbStats, _facebookAccount.AccessToken);

            if (objFBStatsRepo.checkFacebookStatsExists(objfbStats.FbUserId.ToString(), objfbStats.UserId, objfbStats.FanCount, objfbStats.MaleCount, objfbStats.FemaleCount))
            {
                objFBStatsRepo.addFacebookStats(objfbStats);
            }


            return(true);
        }
示例#5
0
        public string getlikeUnlike(string fbUserId, int days)
        {
            //string strPageImpression = string.Empty;
            string likeunlikeDate = string.Empty;
            string strDate        = string.Empty;
            string strImpression  = string.Empty;
            FacebookStatsRepository objFbStatsRepo = new FacebookStatsRepository();
            ArrayList arrFbFanCnt  = objFbStatsRepo.FancountFacebookStats(fbUserId, days);
            string    strFancnt    = string.Empty;
            string    unFancnt     = string.Empty;
            int       NumberOfDays = days;
            int       increament   = 0;

            if (arrFbFanCnt.Count > 5)
            {
                increament = arrFbFanCnt.Count / 5;
            }

            //  strArray = "[";
            string str = string.Empty;
            int    cnt = 0;

            if (arrFbFanCnt.Count > 0)
            {
                if (increament > 0)
                {
                    for (int j = 0; j < arrFbFanCnt.Count; j = j + increament)
                    {
                        Array temp = (Array)arrFbFanCnt[j];
                        strFancnt = strFancnt + temp.GetValue(10).ToString() + ",";
                        cnt++;
                    }
                }
                else
                {
                    foreach (var itemTS in arrFbFanCnt)
                    {
                        Array temp = (Array)itemTS;
                        strFancnt = strFancnt + temp.GetValue(10).ToString() + ",";
                        cnt++;
                    }
                }
            }
            if (cnt < 7)
            {
                for (int j = 0; j < 7 - cnt; j++)
                {
                    str = str + "0,";
                }
            }

            strFancnt = str + strFancnt;
            strFancnt = strFancnt.Substring(0, strFancnt.Length - 1);



            if (arrFbFanCnt.Count > 5)
            {
                increament = arrFbFanCnt.Count / 5;
            }
            List <int>               Fancnt    = new List <int>();
            List <int>               UnFanCnt  = new List <int>();
            List <int>               dts       = new List <int>();
            List <string>            entrydate = new List <string>();
            Dictionary <string, int> dicForcnt = new Dictionary <string, int>();
            int big   = 0;
            int small = 0;
            int diff  = 0;
            int rslt  = 0;
            int i     = 0;

            foreach (var item in arrFbFanCnt)
            {
                Array temp = (Array)item;

                Fancnt.Add(int.Parse((temp.GetValue(10)).ToString()));
            }


            for (i = 0; i < Fancnt.Count - 1; i++)
            {
                if (Fancnt[i] < Fancnt[i + 1])
                {
                    big      = Fancnt[i + 1];
                    small    = Fancnt[i];
                    diff     = big - small;
                    unFancnt = unFancnt + diff + ",";
                }
            }

            string str12 = string.Empty;

            if (UnFanCnt.Count <= 6)
            {
                for (int j = unFancnt.Count(); j <= 7; j++)
                {
                    str12 = str12 + "0,";
                }
            }

            unFancnt = str12 + unFancnt;
            unFancnt = unFancnt.Substring(0, unFancnt.Length - 1);

            string   TimePeriod      = string.Empty;
            DateTime dateforsubtract = DateTime.Now;

            string differencedate = string.Empty;

            if (NumberOfDays == 15)
            {
                for (int k = 0; k < NumberOfDays; k = k + 3)
                {
                    differencedate = dateforsubtract.Subtract(TimeSpan.FromDays(k)).ToShortDateString();
                    TimePeriod    += differencedate + ",";
                }
            }
            if (NumberOfDays == 30)
            {
                for (int k = 0; k < NumberOfDays; k = k + 5)
                {
                    differencedate = dateforsubtract.Subtract(TimeSpan.FromDays(k)).ToShortDateString();
                    TimePeriod    += differencedate + ",";
                }
            }
            if (NumberOfDays == 60)
            {
                for (int k = 0; k < NumberOfDays; k = k + 10)
                {
                    differencedate = dateforsubtract.Subtract(TimeSpan.FromDays(k)).ToShortDateString();
                    TimePeriod    += differencedate + ",";
                }
            }
            if (NumberOfDays == 90)
            {
                for (int k = 0; k < NumberOfDays; k = k + 15)
                {
                    differencedate = dateforsubtract.Subtract(TimeSpan.FromDays(k)).ToShortDateString();
                    TimePeriod    += differencedate + ",";
                }
            }


            TimePeriod = TimePeriod.Substring(0, TimePeriod.Length - 1);

            likeunlikeDate = strFancnt + "@" + unFancnt + "@" + TimePeriod;

            return(likeunlikeDate);
        }
示例#6
0
        protected void Page_Load(object sender, EventArgs e)
        {
            try
            {
                UserRefRelationRepository objUserRefRelationRepository = new UserRefRelationRepository();
                UserRepository            userrepo                         = new UserRepository();
                Registration                regObject                      = new Registration();
                TeamRepository              objTeamRepo                    = new TeamRepository();
                NewsRepository              objNewsRepo                    = new NewsRepository();
                AdsRepository               objAdsRepo                     = new AdsRepository();
                UserActivation              objUserActivation              = new UserActivation();
                UserActivationRepository    objUserActivationRepository    = new UserActivationRepository();
                SocialProfilesRepository    objSocioRepo                   = new SocialProfilesRepository();
                GroupRepository             objGroupRepository             = new GroupRepository();
                TeamMemberProfileRepository objTeamMemberProfileRepository = new TeamMemberProfileRepository();
                Team team = new Team();


                SocioBoard.Domain.User user = (User)Session["LoggedUser"];

                try
                {
                    if (Session["GroupName"] == null)
                    {
                        Groups objGroupDetails = objGroupRepository.getGroupDetail(user.Id);
                        team = objTeamRepo.getAllDetails(objGroupDetails.Id, user.EmailId);
                        Session["GroupName"] = team;
                    }

                    else
                    {
                        team = (SocioBoard.Domain.Team)Session["GroupName"];
                    }
                }
                catch (Exception ex)
                {
                    logger.Error("Error: " + ex.Message);
                }
                Session["facebooktotalprofiles"] = null;

                if (user.Password == null)
                {
                    Response.Redirect("/Pricing.aspx");
                }

                #region Days remaining
                if (Session["days_remaining"] == null)
                {
                    if (user.PaymentStatus == "unpaid" && user.AccountType != "Free")
                    {
                        int daysremaining = (user.ExpiryDate.Date - DateTime.Now.Date).Days;
                        if (daysremaining < 0)
                        {
                            daysremaining = -1;
                        }
                        Session["days_remaining"] = daysremaining;
                        //ScriptManager.RegisterStartupScript(this, GetType(), "showalert", "alert('You are using '" + user.AccountType + "' account only '" + daysremaining + "' days is remaining !');", true);
                        if (daysremaining <= -1)
                        {
                        }
                        else if (daysremaining == 0)
                        {
                            ScriptManager.RegisterStartupScript(this, GetType(), "showalert", "alert('Your trial " + user.AccountType + " account will expire end of the day, please upgrade to paid plan.');", true);
                        }
                        else
                        {
                            ScriptManager.RegisterStartupScript(this, GetType(), "showalert", "alert('Your trial " + user.AccountType + " account will expire in " + daysremaining + " days, please upgrade to paid plan.');", true);
                        }
                    }
                }

                #endregion

                #region for You can use only 30 days as Unpaid User

                if (user.PaymentStatus.ToLower() == "unpaid" && user.AccountType != "Free")
                {
                    if (!SBUtils.IsUserWorkingDaysValid(user.ExpiryDate))
                    {
                        // ScriptManager.RegisterStartupScript(this, GetType(), "showalert", "alert('You can use only 30 days as Unpaid User !');", true);

                        Session["GreaterThan30Days"] = "GreaterThan30Days";

                        Response.Redirect("/Settings/Billing.aspx");
                    }
                }

                Session["GreaterThan30Days"] = null;
                #endregion

                if (!IsPostBack)
                {
                    try
                    {
                        if (user == null)
                        {
                            Response.Redirect("Default.aspx");
                        }
                    }
                    catch (Exception ex)
                    {
                        Console.WriteLine(ex.Message);
                        logger.Error(ex.StackTrace);
                    }


                    try
                    {
                        objUserActivation = objUserActivationRepository.GetUserActivationStatus(user.Id.ToString());
                    }
                    catch (Exception ex)
                    {
                        Session["objUserActivationException"] = "objUserActivationException";

                        Console.WriteLine(ex.Message);
                        logger.Error(ex.StackTrace);
                    }


                    #region Count Used Accounts
                    try
                    {
                        if (user.AccountType.ToString().ToLower() == AccountType.Deluxe.ToString().ToLower())
                        {
                            tot_acc = 50;
                        }
                        else if (user.AccountType.ToString().ToLower() == AccountType.Standard.ToString().ToLower())
                        {
                            tot_acc = 10;
                        }
                        else if (user.AccountType.ToString().ToLower() == AccountType.Premium.ToString().ToLower())
                        {
                            tot_acc = 20;
                        }
                        else if (user.AccountType.ToString().ToLower() == AccountType.Free.ToString().ToLower())
                        {
                            tot_acc = 5;
                        }

                        else if (user.AccountType.ToString().ToLower() == AccountType.SocioBasic.ToString().ToLower())
                        {
                            tot_acc = 100;
                        }
                        else if (user.AccountType.ToString().ToLower() == AccountType.SocioStandard.ToString().ToLower())
                        {
                            tot_acc = 200;
                        }
                        else if (user.AccountType.ToString().ToLower() == AccountType.SocioPremium.ToString().ToLower())
                        {
                            tot_acc = 500;
                        }
                        else if (user.AccountType.ToString().ToLower() == AccountType.SocioDeluxe.ToString().ToLower())
                        {
                            tot_acc = 1000;
                        }


                        profileCount            = objSocioRepo.getAllSocialProfilesOfUser(user.Id).Count;
                        Session["ProfileCount"] = profileCount;
                        Session["TotalAccount"] = tot_acc;

                        try
                        {
                            Groups lstDetail = objGroupRepository.getGroupName(team.GroupId);
                            if (lstDetail.GroupName == "Socioboard")
                            {
                                usedAccount.InnerHtml = " using " + profileCount + " of " + tot_acc;
                            }
                        }
                        catch (Exception ex)
                        {
                            logger.Error(ex.StackTrace);
                        }
                    }
                    catch (Exception ex)
                    {
                        logger.Error(ex.StackTrace);
                    }
                    #endregion



                    try
                    {
                        Groups lstDetails = objGroupRepository.getGroupName(team.GroupId);
                        if (lstDetails.GroupName != "Socioboard")
                        {
                            expander.Attributes.CssStyle.Add("display", "none");
                        }
                    }
                    catch (Exception ex)
                    {
                        Console.WriteLine(ex.StackTrace);
                    }


                    //this is used to check whether facebok account Already Exist
                    if (Session["alreadyexist"] != null)
                    {
                        ScriptManager.RegisterStartupScript(this, GetType(), "showalert", "alert('This Profile is Already Added please add aother Account!');", true);
                        Session["alreadyexist"] = null;
                    }
                    if (Session["alreadypageexist"] != null)
                    {
                        ScriptManager.RegisterStartupScript(this, GetType(), "showalert", "alert('This Page is Already Added please add aother Page!');", true);
                        Session["alreadypageexist"] = null;
                    }



                    if (!string.IsNullOrEmpty(Request.QueryString["type"]))
                    {
                        try
                        {
                            userrepo.UpdateAccountType(user.Id, Request.QueryString["type"]);
                        }
                        catch (Exception ex)
                        {
                            Console.WriteLine(ex.StackTrace);
                            logger.Error(ex.StackTrace);
                        }
                    }

                    //acrossProfile.InnerHtml = "Across " + user.UserName + "'s Twitter and Facebook accounts";
                    teamMem.InnerHtml = "managing " + user.UserName;
                    try
                    {
                        News nws = objNewsRepo.getNewsForHome();
                        //divNews.InnerHtml = nws.NewsDetail;
                    }
                    catch (Exception Err)
                    {
                        Console.Write(Err.StackTrace);
                        logger.Error(Err.StackTrace);
                    }
                    try
                    {
                        ArrayList lstads = objAdsRepo.getAdsForHome();
                        if (lstads.Count < 1)
                        {
                            if (user.PaymentStatus.ToUpper() == "PAID")
                            {
                                bindads.InnerHtml = "<img src=\"../Contents/img/admin/ads.png\"  alt=\"\" >";
                            }
                            else
                            {
                                #region ADS Script
                                bindads.InnerHtml = "<script async src=\"//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js\"></script>" +
                                                    "<!-- socioboard -->" +
                                                    "<ins class=\"adsbygoogle\"" +
                                                    "style=\"display:inline-block;width:250px;height:250px\"" +
                                                    "data-ad-client=\"ca-pub-7073257741073458\"" +
                                                    "data-ad-slot=\"9533254693\"></ins>" +
                                                    "<script>" +
                                                    "(adsbygoogle = window.adsbygoogle || []).push({});" +
                                                    "</script>";
                                #endregion
                            }
                        }


                        foreach (var item in lstads)
                        {
                            Array temp = (Array)item;
                            //imgAds.ImageUrl = temp.GetValue(2).ToString();
                            if (user.PaymentStatus.ToUpper() == "PAID")
                            {
                                bindads.InnerHtml = "<img src=\"" + temp.GetValue(2).ToString() + "\"  alt=\"\" style=\"width:246px;height:331px\">";
                            }
                            else
                            {
                                #region ADS Script
                                bindads.InnerHtml = "<script async src=\"//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js\"></script>" +
                                                    "<!-- socioboard -->" +
                                                    "<ins class=\"adsbygoogle\"" +
                                                    "style=\"display:inline-block;width:250px;height:250px\"" +
                                                    "data-ad-client=\"ca-pub-7073257741073458\"" +
                                                    "data-ad-slot=\"9533254693\"></ins>" +
                                                    "<script>" +
                                                    "(adsbygoogle = window.adsbygoogle || []).push({});" +
                                                    "</script>";
                                #endregion
                            }
                            break;
                            // ads.ImageUrl;
                        }
                    }
                    catch (Exception Err)
                    {
                        Console.Write(Err.StackTrace);
                        logger.Error(Err.StackTrace);
                    }
                    #region Team Member Count
                    try
                    {
                        GroupRepository grouprepo    = new GroupRepository();
                        string          groupsofhome = string.Empty;
                        List <Groups>   lstgroups    = grouprepo.getAllGroups(user.Id);
                        if (lstgroups.Count != 0)
                        {
                            foreach (Groups item in lstgroups)
                            {
                                groupsofhome += "<li><a href=\"../Settings/InviteMember.aspx?q=" + item.Id + "\"><img src=\"../Contents/img/groups_.png\" alt=\"\" style=\" margin-right:5px;\"> " + item.GroupName + "</a></li>";
                            }
                            getAllGroupsOnHome.InnerHtml = groupsofhome;
                        }
                    }
                    catch (Exception ex)
                    {
                        logger.Error(ex.StackTrace);
                    }
                    #endregion

                    try
                    {
                        string      strTeam = string.Empty;
                        List <Team> teams   = objTeamRepo.getAllTeamsOfUser(user.Id, team.GroupId, user.EmailId);
                        foreach (Team item in teams)
                        {
                            strTeam += "<div class=\"userpictiny\"><a target=\"_blank\" href=\"#\">" +
                                       "<img width=\"48\" height=\"48\" title=\"" + item.FirstName + "\" alt=\"\" src=\"../Contents/img/blank_img.png\">" +
                                       "</a></div>";
                        }
                        team_member.InnerHtml = strTeam;
                    }
                    catch (Exception Err)
                    {
                        Console.Write(Err.StackTrace);
                    }

                    #region Add Fan Page
                    try
                    {
                        if (Session["fbSocial"] != null)
                        {
                            if (Session["fbSocial"] == "p")
                            {
                                FacebookAccount objFacebookAccount = (FacebookAccount)Session["fbpagedetail"];

                                //    string strpageUrl = "https://graph.facebook.com/" + objFacebookAccount.FacebookId + "/accounts";
                                // objFacebookUrlBuilder = (FacebookUrlBuilder)Session["FacebookInsightUser"];
                                //    string strData = objAuthentication.RequestUrl(strpageUrl, objFacebookAccount.Token);
                                //    JObject output = objWebRequest.FacebookRequest(strData, "Get");
                                FacebookClient fb = new FacebookClient();
                                fb.AccessToken = objFacebookAccount.AccessToken;
                                dynamic output = fb.Get("/me/accounts");
                                //  JArray data = (JArray)output["data"];
                                DataTable dtFbPage = new DataTable();
                                dtFbPage.Columns.Add("Email");
                                dtFbPage.Columns.Add("PageId");
                                dtFbPage.Columns.Add("PageName");
                                dtFbPage.Columns.Add("status");
                                dtFbPage.Columns.Add("customer_id");
                                string strPageDiv = string.Empty;
                                if (output != null)
                                {
                                    foreach (var item in output["data"])
                                    {
                                        if (item.category.ToString() != "Application")
                                        {
                                            strPageDiv      += "<div><a id=\"A1\"  onclick=\"getInsights('" + item["id"].ToString() + "','" + item["name"].ToString() + "')\"><span>" + item["name"].ToString() + "</span> </a></div>";
                                            fbpage.InnerHtml = strPageDiv;
                                        }
                                    }
                                }
                                else
                                {
                                    strPageDiv += "<div>No Pages Found</div>";
                                }
                                Page.ClientScript.RegisterStartupScript(Page.GetType(), "my", " ShowDialogHome(false);", true);
                                Session["fbSocial"] = null;
                            }
                        }
                    }
                    catch (Exception ex)
                    {
                        Console.WriteLine(ex.Message);
                        logger.Error(ex.StackTrace);
                    }
                    #endregion

                    #region InsightsData
                    try
                    {
                        decimal malecount = 0, femalecount = 0, cnt = 0;

                        FacebookStatsRepository objfbStatsRepo = new FacebookStatsRepository();
                        double daysSub = (DateTime.Now - user.CreateDate).TotalDays;

                        int userdays;
                        if (daysSub > 0 && daysSub <= 1)
                        {
                            userdays = 1;
                        }
                        else
                        {
                            userdays = (int)daysSub;
                        }
                        ArrayList arrFbStats = objfbStatsRepo.getAllFacebookStatsOfUser(user.Id, userdays);
                        //ArrayList arrFbStats = objfbStatsRepo.getTotalFacebookStatsOfUser(user.Id);

                        Random rNum = new Random();
                        foreach (var item in arrFbStats)
                        {
                            Array temp = (Array)item;
                            cnt         += int.Parse(temp.GetValue(3).ToString()) + int.Parse(temp.GetValue(4).ToString());
                            malecount   += int.Parse(temp.GetValue(3).ToString());
                            femalecount += int.Parse(temp.GetValue(4).ToString());
                        }
                        try
                        {
                            decimal mc = (malecount / cnt) * 100;
                            male = Convert.ToInt16(mc);
                        }
                        catch (Exception Err)
                        {
                            Console.Write(Err.StackTrace);
                            logger.Error(Err.StackTrace);
                        }
                        try
                        {
                            decimal fc = (femalecount / cnt) * 100;
                            female = Convert.ToInt16(fc);
                        }
                        catch (Exception Err)
                        {
                            Console.Write(Err.StackTrace);
                            logger.Error(Err.StackTrace);
                        }
                        int twtAccCount = objSocioRepo.getAllSocialProfilesTypeOfUser(user.Id, "twitter").Count;
                        if (twtAccCount > 1)
                        {
                            twtmale   = rNum.Next(100);
                            twtfemale = 100 - twtmale;
                        }
                        else if (twtAccCount == 1)
                        {
                            twtmale   = 100;
                            twtfemale = 0;
                        }
                        Session["twtGender"] = twtmale + "," + twtfemale;
                    }
                    catch (Exception Err)
                    {
                        Console.Write(Err.Message.ToString());
                        logger.Error(Err.StackTrace);
                    }
                    //getgrphData();
                    // getNewFriends(7);
                    //  getNewFriends();
                    //  getNewFollowers();
                    #endregion

                    #region GetFollower


                    try
                    {
                        String TwtProfileId = string.Empty;

                        TwitterStatsRepository objtwtStatsRepo = new TwitterStatsRepository();

                        List <TeamMemberProfile> objTeamMemberProfile = objTeamMemberProfileRepository.getTwtTeamMemberProfileData(team.Id);
                        foreach (TeamMemberProfile item in objTeamMemberProfile)
                        {
                            TwtProfileId += item.ProfileId + ',';
                        }
                        TwtProfileId = TwtProfileId.Substring(0, TwtProfileId.Length - 1);

                        List <TwitterStats> arrTwtStats = objtwtStatsRepo.getAllAccountDetail(TwtProfileId);

                        //strTwtArray = "[";
                        int    NewTweet_Count = 0;
                        string TotalFollower  = string.Empty;
                        foreach (TwitterStats item in arrTwtStats)
                        {
                            NewTweet_Count += item.FollowerCount;
                        }
                        if (NewTweet_Count >= 100000)
                        {
                            TotalFollower = (System.Math.Round(((float)NewTweet_Count / 1000000), 2)) + "M";
                        }
                        else if (NewTweet_Count > 1000 && NewTweet_Count < 100000)
                        {
                            TotalFollower = (System.Math.Round(((float)NewTweet_Count / 1000), 2)) + "K";
                        }
                        else
                        {
                            TotalFollower = NewTweet_Count.ToString();
                        }

                        spanNewTweets.InnerHtml = TotalFollower;
                    }
                    catch (Exception Err)
                    {
                        Console.Write(Err.Message.ToString());
                        logger.Error(Err.StackTrace);
                    }


                    #endregion

                    #region GetFacebookFanPage

                    try
                    {
                        String FbProfileId = string.Empty;

                        FacebookStatsRepository objFacebookStatsRepository = new FacebookStatsRepository();

                        List <TeamMemberProfile> objTeamMemberProfile = objTeamMemberProfileRepository.getTeamMemberProfileData(team.Id);
                        foreach (TeamMemberProfile item in objTeamMemberProfile)
                        {
                            FbProfileId += item.ProfileId + ',';
                        }
                        FbProfileId = FbProfileId.Substring(0, FbProfileId.Length - 1);

                        List <FacebookStats> arrFbStats = objFacebookStatsRepository.getAllAccountDetail(FbProfileId);

                        //strTwtArray = "[";
                        int    NewFbFan_Count = 0;
                        string TotalFriends   = string.Empty;
                        foreach (FacebookStats item in arrFbStats)
                        {
                            NewFbFan_Count += item.FanCount;
                        }
                        if (NewFbFan_Count >= 100000)
                        {
                            TotalFriends = (System.Math.Round(((float)NewFbFan_Count / 1000000), 2)) + "M";
                        }
                        else if (NewFbFan_Count > 1000 && NewFbFan_Count < 100000)
                        {
                            TotalFriends = (System.Math.Round(((float)NewFbFan_Count / 1000), 2)) + "K";
                        }
                        else
                        {
                            TotalFriends = NewFbFan_Count.ToString();
                        }

                        spanFbFans.InnerHtml = TotalFriends;
                    }
                    catch (Exception Err)
                    {
                        Console.Write(Err.Message.ToString());
                        logger.Error(Err.StackTrace);
                    }

                    #endregion



                    #region IncomingMessages
                    try
                    {
                        FacebookFeedRepository fbFeedRepo = new FacebookFeedRepository();
                        int fbmessagescout = fbFeedRepo.countUnreadMessages(user.Id);
                        TwitterMessageRepository twtMsgRepo = new TwitterMessageRepository();
                        int twtcount = twtMsgRepo.getCountUnreadMessages(user.Id);
                        Session["CountMessages"] = fbmessagescout + twtcount;
                    }
                    catch (Exception ex)
                    {
                        logger.Error(ex.StackTrace);
                    }
                    #endregion



                    #region NewIncomingMessage

                    try
                    {
                        String FbProfileId  = string.Empty;
                        String TwtProfileId = string.Empty;
                        List <TeamMemberProfile> objTeamMemberProfile = objTeamMemberProfileRepository.getAllTeamMemberProfilesOfTeam(team.Id);
                        foreach (TeamMemberProfile item in objTeamMemberProfile)
                        {
                            try
                            {
                                if (item.ProfileType == "facebook")
                                {
                                    FbProfileId += item.ProfileId + ',';
                                }

                                else if (item.ProfileType == "twitter")
                                {
                                    TwtProfileId += item.ProfileId + ',';
                                }
                            }
                            catch (Exception Err)
                            {
                                Console.Write(Err.StackTrace);
                                logger.Error(Err.StackTrace);
                            }
                        }

                        try
                        {
                            FbProfileId = FbProfileId.Substring(0, FbProfileId.Length - 1);
                        }
                        catch (Exception Err)
                        {
                            Console.Write(Err.StackTrace);
                            logger.Error(Err.StackTrace);
                        }

                        try
                        {
                            TwtProfileId = TwtProfileId.Substring(0, TwtProfileId.Length - 1);
                        }
                        catch (Exception Err)
                        {
                            Console.Write(Err.StackTrace);
                            logger.Error(Err.StackTrace);
                        }

                        FacebookFeedRepository objFacebookFeedRepository = new FacebookFeedRepository();
                        List <FacebookFeed>    alstfb = objFacebookFeedRepository.getAllFeedDetail(FbProfileId);
                        // FacebookMessageRepository objFacebookMessageRepository = new FacebookMessageRepository();
                        TwitterMessageRepository objtwttatsRepo = new TwitterMessageRepository();
                        // List<FacebookMessage> alstfb = objFacebookMessageRepository.getAllMessageDetail(FbProfileId);
                        List <TwitterMessage> alstTwt = objtwttatsRepo.getAlltwtMessages(TwtProfileId);

                        int TotalFbMsgCount  = 0;
                        int TotalTwtMsgCount = 0;

                        try
                        {
                            TotalFbMsgCount = alstfb.Count;
                        }
                        catch (Exception Err)
                        {
                            Console.Write(Err.StackTrace);
                            logger.Error(Err.StackTrace);
                        }

                        try
                        {
                            TotalTwtMsgCount = alstTwt.Count;
                        }
                        catch (Exception Err)
                        {
                            Console.Write(Err.StackTrace);
                            logger.Error(Err.StackTrace);
                        }



                        spanIncoming.InnerHtml = (TotalFbMsgCount + TotalTwtMsgCount).ToString();

                        string profileid = string.Empty;
                        ScheduledMessageRepository objScheduledMessageRepository = new ScheduledMessageRepository();
                        foreach (TeamMemberProfile item in objTeamMemberProfile)
                        {
                            profileid += item.ProfileId + ',';
                        }

                        profileid = profileid.Substring(0, profileid.Length - 1);

                        spanSent.InnerHtml = objScheduledMessageRepository.getAllSentMessageDetails(profileid).Count().ToString();
                    }

                    catch (Exception Err)
                    {
                        Console.Write(Err.StackTrace);
                        logger.Error(Err.StackTrace);
                    }
                }


                #endregion
            }

            catch (Exception Err)
            {
                Console.Write(Err.StackTrace);
            }
        }
示例#7
0
        public string DeleteAllUsersByCreateDate(string date)
        {
            int                                i                                     = 0;
            int                                count                                 = 0;
            UserRepository                     objUserRepository                     = new UserRepository();
            List <User>                        lstuser                               = objUserRepository.GetAllUsersByCreateDate(date);
            ArchiveMessageRepository           objArchiveMessageRepository           = new ArchiveMessageRepository();
            DiscoverySearchRepository          objDiscoverySearchRepository          = new DiscoverySearchRepository();
            DraftsRepository                   objDraftsRepository                   = new DraftsRepository();
            FacebookAccountRepository          objFacebookAccountRepository          = new FacebookAccountRepository();
            FacebookFeedRepository             objFacebookFeedRepository             = new FacebookFeedRepository();
            FacebookInsightPostStatsRepository objFacebookInsightPostStatsRepository = new FacebookInsightPostStatsRepository();
            FacebookInsightStatsRepository     objFacebookInsightStatsRepository     = new FacebookInsightStatsRepository();
            FacebookMessageRepository          objFacebookMessageRepository          = new FacebookMessageRepository();
            FacebookStatsRepository            objFacebookStatsRepository            = new FacebookStatsRepository();
            GoogleAnalyticsAccountRepository   objGoogleAnalyticsAccountRepository   = new GoogleAnalyticsAccountRepository();
            GoogleAnalyticsStatsRepository     objGoogleAnalyticsStatsRepository     = new GoogleAnalyticsStatsRepository();
            GooglePlusAccountRepository        objGooglePlusAccountRepository        = new GooglePlusAccountRepository();
            GooglePlusActivitiesRepository     objGooglePlusActivitiesRepository     = new GooglePlusActivitiesRepository();
            GroupProfileRepository             objGroupProfileRepository             = new GroupProfileRepository();
            GroupRepository                    objGroupRepository                    = new GroupRepository();
            InstagramAccountRepository         objInstagramAccountRepository         = new InstagramAccountRepository();
            InstagramCommentRepository         objInstagramCommentRepository         = new InstagramCommentRepository();
            InstagramFeedRepository            objInstagramFeedRepository            = new InstagramFeedRepository();
            LinkedInAccountRepository          objLinkedInAccountRepository          = new LinkedInAccountRepository();
            LinkedInFeedRepository             objLinkedInFeedRepository             = new LinkedInFeedRepository();
            LogRepository                      objLogRepository                      = new LogRepository();
            RssFeedsRepository                 objRssFeedsRepository                 = new RssFeedsRepository();
            RssReaderRepository                objRssReaderRepository                = new RssReaderRepository();
            ScheduledMessageRepository         objScheduledMessageRepository         = new ScheduledMessageRepository();
            SocialProfilesRepository           objSocialProfilesRepository           = new SocialProfilesRepository();
            TaskCommentRepository              objTaskCommentRepository              = new TaskCommentRepository();
            TaskRepository                     objTaskRepository                     = new TaskRepository();
            TeamRepository                     objTeamRepository                     = new TeamRepository();
            TeamMemberProfileRepository        objTeamMemberProfileRepository        = new TeamMemberProfileRepository();
            TwitterAccountRepository           objTwitterAccountRepository           = new TwitterAccountRepository();
            TwitterDirectMessageRepository     objTwitterDirectMessageRepository     = new TwitterDirectMessageRepository();
            TwitterFeedRepository              objTwitterFeedRepository              = new TwitterFeedRepository();
            TwitterMessageRepository           objTwitterMessageRepository           = new TwitterMessageRepository();
            TwitterStatsRepository             objTwitterStatsRepository             = new TwitterStatsRepository();
            UserActivationRepository           objUserActivationRepository           = new UserActivationRepository();
            UserPackageRelationRepository      objUserPackageRelationRepository      = new UserPackageRelationRepository();



            count = lstuser.Count();


            foreach (var item in lstuser)
            {
                i++;
                try
                {
                    if (item.EmailId == "*****@*****.**" || item.EmailId == "*****@*****.**" || item.EmailId == "*****@*****.**" || item.EmailId == "*****@*****.**" || item.EmailId == "*****@*****.**" || item.EmailId == "*****@*****.**" || item.EmailId == "*****@*****.**" || item.EmailId == "*****@*****.**" || item.EmailId == "*****@*****.**" || item.EmailId == "*****@*****.**")
                    {
                    }
                    else
                    {
                        objArchiveMessageRepository.DeleteArchiveMessageByUserid(item.Id);
                        objDiscoverySearchRepository.DeleteDiscoverySearchByUserid(item.Id);
                        objDraftsRepository.DeleteDraftsByUserid(item.Id);
                        objFacebookAccountRepository.DeleteFacebookAccountByUserid(item.Id);
                        objFacebookFeedRepository.DeleteFacebookFeedByUserid(item.Id);
                        objFacebookInsightPostStatsRepository.DeleteFacebookInsightPostStatsByUserid(item.Id);
                        objFacebookInsightStatsRepository.DeleteFacebookInsightStatsByUserid(item.Id);
                        objFacebookMessageRepository.DeleteFacebookMessageByUserid(item.Id);
                        objFacebookStatsRepository.DeleteFacebookStatsByUserid(item.Id);
                        objGoogleAnalyticsAccountRepository.DeleteGoogleAnalyticsAccountByUserid(item.Id);
                        objGoogleAnalyticsStatsRepository.DeleteGoogleAnalyticsStatsByUserid(item.Id);
                        objGooglePlusAccountRepository.DeleteGooglePlusAccountByUserid(item.Id);
                        objGooglePlusActivitiesRepository.DeleteGooglePlusActivitiesByUserid(item.Id);
                        objGroupProfileRepository.DeleteGroupProfileByUserid(item.Id);
                        objGroupRepository.DeleteGroupsByUserid(item.Id);
                        objInstagramAccountRepository.DeleteInstagramAccountByUserid(item.Id);
                        objInstagramCommentRepository.DeleteInstagramCommentByUserid(item.Id);
                        objInstagramFeedRepository.DeleteInstagramFeedByUserid(item.Id);
                        objLinkedInAccountRepository.DeleteLinkedInAccountByUserid(item.Id);
                        objLinkedInFeedRepository.DeleteLinkedInFeedByUserid(item.Id);
                        objLogRepository.DeleteLogByUserid(item.Id);
                        objRssFeedsRepository.DeleteRssFeedsByUserid(item.Id);
                        objRssReaderRepository.DeleteRssReaderByUserid(item.Id);
                        objScheduledMessageRepository.DeleteScheduledMessageByUserid(item.Id);
                        objSocialProfilesRepository.DeleteSocialProfileByUserid(item.Id);
                        objTaskCommentRepository.DeleteTaskCommentByUserid(item.Id);
                        objTaskRepository.DeleteTasksByUserid(item.Id);
                        objTeamRepository.DeleteTeamByUserid(item.Id);
                        objTeamMemberProfileRepository.DeleteTeamMemberProfileByUserid(item.Id);
                        objTwitterAccountRepository.DeleteTwitterAccountByUserid(item.Id);
                        objTwitterDirectMessageRepository.DeleteTwitterDirectMessagesByUserid(item.Id);
                        objTwitterFeedRepository.DeleteTwitterFeedByUserid(item.Id);
                        objTwitterMessageRepository.DeleteTwitterMessageByUserid(item.Id);
                        objTwitterStatsRepository.DeleteTwitterStatsByUserid(item.Id);
                        objUserActivationRepository.DeleteUserActivationByUserid(item.Id);
                        objUserPackageRelationRepository.DeleteuserPackageRelationByUserid(item.Id);
                        objUserRepository.DeleteUserByUserid(item.Id);
                    }
                }
                catch (Exception ex)
                {
                    Console.WriteLine(ex.Message);
                }
            }
            return(i + " " + count);
        }
        public void getfbFriendsGenderStatsForFanPage(dynamic profile, Guid userId, ref FacebookAccount objfbacnt)
        {
            FacebookStats objfbStats = new FacebookStats();
            FacebookStatsRepository objFBStatsRepo = new FacebookStatsRepository();
            //int malecount = 0;
            //int femalecount = 0;
            //foreach (var item in data["data"])
            //{
            //    if (item["gender"] == "male")
            //        malecount++;
            //    else if (item["gender"] == "female")
            //        femalecount++;
            //}
            objfbStats.EntryDate = DateTime.Now;
            objfbStats.FbUserId = profile["id"].ToString();
            //objfbStats.FemaleCount = femalecount;
            objfbStats.Id = Guid.NewGuid();
            //objfbStats.MaleCount = malecount;
            objfbStats.UserId = userId;
            objfbStats.FanCount = objfbacnt.Friends;
            //objfbStats.ShareCount = getShareCount();
            //objfbStats.CommentCount = getCommentCount();
            //objfbStats.LikeCount = getLikeCount();
            objFBStatsRepo.addFacebookStats(objfbStats);
            FacebookInsightStatsHelper objfbinshlpr = new FacebookInsightStatsHelper();
            string pId = profile["id"].ToString();
            //string pId = "329139457226886";
            objfbinshlpr.getPageImpresion(pId, userId, 7);

        }
        public void getfbFriendsGenderStats(dynamic data, dynamic profile, Guid userId)
        {
            FacebookStats objfbStats = new FacebookStats();
            FacebookStatsRepository objFBStatsRepo = new FacebookStatsRepository();
            int malecount = 0;
            int femalecount = 0;
            foreach (var item in data["data"])
            {
                if (item["gender"] == "male")
                    malecount++;
                else if (item["gender"] == "female")
                    femalecount++;
            }
            objfbStats.EntryDate = DateTime.Now;
            objfbStats.FbUserId = profile["id"].ToString();
            objfbStats.FemaleCount = femalecount;
            objfbStats.Id = Guid.NewGuid();
            objfbStats.MaleCount = malecount;
            objfbStats.UserId = userId;
            objfbStats.FanCount = getfanCount(ref objfbStats);
            objFBStatsRepo.addFacebookStats(objfbStats);

        }