public datTabJSON getRattlesICreated(int PageNum)
    {
        //System.Windows.Forms.MessageBox.Show("in service");
        datTabJSON rtnJSON = new datTabJSON();

        try
        {
            bizInformation myBizInfo = new bizInformation();

            rtnJSON.sColumns = myBizInfo.getMyRattlesHtml(PageNum);
            if (rtnJSON.sColumns != null)
            {
                rtnJSON.iTotalDisplayRecords = PageNum + 1;
                rtnJSON.sError = 0;
            }
            else
            {
                rtnJSON.iTotalDisplayRecords = 0;
                rtnJSON.sError = 100;
            }
        }
        catch (Exception err)
        {
            rtnJSON.sError = 550;
            return(null);
        }
        return(rtnJSON);
    }
    public datTabJSON getShopsRattle(string shopID)
    {
        datTabJSON rtnJSON = new datTabJSON();

        try
        {
            bizInformation myBizInfo = new bizInformation(shopID);
            rtnJSON.sColumns = myBizInfo.getMyRattlesHtml(1);
            if (rtnJSON.sColumns != null)
            {
                rtnJSON.iTotalDisplayRecords = 1 + 1;
                rtnJSON.iTotalRecords        = myBizInfo.CurrCycleRattleCnt;
                rtnJSON.sError = 0;
            }
            else
            {
                rtnJSON.iTotalDisplayRecords = 0;
                rtnJSON.sError = 100;
            }
        }
        catch (Exception err)
        {
            rtnJSON.sError = 911;
        }

        return(rtnJSON);
    }
    public datTabJSON getMyRattles(int pageNum)
    {
        datTabJSON dtTab = new datTabJSON();

        try
        {
            if (!User.Identity.IsAuthenticated)
            {
                dtTab.sError = 904;
                return(dtTab);
            }


            SNetwrking myNetWork = new SNetwrking();
            dtTab.iDataGrp = myNetWork.generateMyRattles(pageNum);
            if (dtTab.iDataGrp != null)
            {
                dtTab.iTotalRecords = dtTab.iDataGrp.Count;
                dtTab.sError        = 0;
            }
            else
            {
                dtTab.sError = 100;
            }
            return(dtTab);
        }

        catch (Exception err)
        {
            //System.Windows.Forms.MessageBox.Show(err.Message  );
            dtTab.sError = 911;
            return(dtTab);
        }
    }
    public datTabJSON DeleteRattle(int rattleID)
    {
        datTabJSON myJSON = new datTabJSON();

        if (!User.Identity.IsAuthenticated)
        {
            myJSON.sError = 904;
            return(myJSON);
        }

        string connStr    = WebConfigurationManager.ConnectionStrings["rattleDB"].ConnectionString;
        string myID       = Membership.GetUser().ProviderUserKey.ToString();
        string storedProc = "rattleDelete";

        using (SqlConnection con = new SqlConnection(connStr))
        {
            SqlCommand cmd = new SqlCommand(storedProc, con);
            cmd.CommandType = CommandType.StoredProcedure;

            cmd.Parameters.Add(new SqlParameter("@ID", SqlDbType.VarChar, 50));
            cmd.Parameters.Add(new SqlParameter("@RattleID", SqlDbType.Int, 120));
            cmd.Parameters["@ID"].Value       = myID;
            cmd.Parameters["@RattleID"].Value = rattleID;
            //System.Windows.Forms.MessageBox.Show("4" + typ);
            try
            {
                con.Open();
                int rtnCode = cmd.ExecuteNonQuery();
                con.Close();
                string cacheFans = myID + "rattlesIcreatedXml";;
                CommonFunctions.cacheRemove(cacheFans);
                myJSON.sError = 0;
                return(myJSON);
            }
            catch (SqlException sqlErr)
            {
                //System.Windows.Forms.MessageBox.Show(sqlErr.Message);
                myJSON.sError = 557;
                return(myJSON);
            }
        }
    }
    public datTabJSON getmyCoupons(int PageNum)
    {
        datTabJSON rtnJSON = new datTabJSON();

        if (!User.Identity.IsAuthenticated)
        {
            rtnJSON.sError = 904;
            return(rtnJSON);
        }

        if (!patRatesFunctions.CommonFunctions.isNumeric(PageNum.ToString()))

        {
            rtnJSON.sEcho  = "Invalid Pagenumber";
            rtnJSON.sError = 908;
            return(rtnJSON);
        }

        try
        {
            SNetwrking disMy  = new SNetwrking();
            string     myHtml = disMy.getMydiscounts(PageNum);
            if (myHtml == null)
            {
                rtnJSON.sEcho  = "<div>No More records to fetch.</div>";
                rtnJSON.sError = 100;
                return(rtnJSON);
            }
            rtnJSON.sEcho  = myHtml;
            rtnJSON.sError = 0;
        }
        catch (Exception ex)
        {
            rtnJSON.sError = 656;
            rtnJSON.sEcho  = ex.Message;
            return(rtnJSON);
        }

        return(rtnJSON);
    }
    public datTabJSON getMyFans(string sEcho)
    {
        //Get all Fans And FanGrps in Array and pass it as JSON - cloned from getMyShops

        datTabJSON JSON = new datTabJSON();

        try
        {
            if (User.Identity.IsAuthenticated)
            {
                SNetwrking myFans = new SNetwrking();
                JSON.aaData               = myFans.getMyFans();
                JSON.iDataGrp             = myFans.getFanGroups();
                JSON.iTotalRecords        = myFans.TotalFans;
                JSON.sColumns             = "4";
                JSON.sEcho                = sEcho;
                JSON.iTotalDisplayRecords = 10;
                if (JSON.iTotalRecords == 0)
                {
                    JSON.sError = 100;
                }
                else
                {
                    JSON.sError = 0;
                }
            }
            else
            {
                JSON.sError = 904;
            }
        }
        catch (Exception err)
        {
            //System.Windows.Forms.MessageBox.Show (err.Message );
            JSON.sError = 999;
        }
        return(JSON);
    }
    public datTabJSON createNewRattle(string rattle)
    {
        datTabJSON myJSON = new datTabJSON();

        try
        {
            if (!User.Identity.IsAuthenticated)
            {
                myJSON.sEcho  = "User not logged in";
                myJSON.sError = 904;
                return(myJSON);
            }
            rattle.Trim();
            if (rattle.Length > 120)
            {
                myJSON.sEcho  = "Rattle length is greater than 120 characters";
                myJSON.sError = 555;
                return(myJSON);
            }
            if (rattle.Length == 0)
            {
                myJSON.sEcho  = "Your rattles cannot be empty";
                myJSON.sError = 556;
                return(myJSON);
            }

            string connStr    = WebConfigurationManager.ConnectionStrings["rattleDB"].ConnectionString;
            string myID       = Membership.GetUser().ProviderUserKey.ToString();
            string storedProc = "rattleInsert";
            using (SqlConnection con = new SqlConnection(connStr))
            {
                SqlCommand cmd = new SqlCommand(storedProc, con);
                cmd.CommandType = CommandType.StoredProcedure;

                cmd.Parameters.Add(new SqlParameter("@ID", SqlDbType.VarChar, 50));
                cmd.Parameters.Add(new SqlParameter("@rattleMsg", SqlDbType.VarChar, 120));
                cmd.Parameters.Add(new SqlParameter("@RattleID", SqlDbType.Int, 120));

                cmd.Parameters["@ID"].Value           = myID;
                cmd.Parameters["@rattleMsg"].Value    = rattle;
                cmd.Parameters["@RattleID"].Direction = ParameterDirection.Output;
                //System.Windows.Forms.MessageBox.Show("4" + typ);
                try
                {
                    con.Open();
                    cmd.ExecuteNonQuery();
                    string rattleID = cmd.Parameters["@RattleID"].Value.ToString();
                    con.Close();
                    string cacheFans = myID + "rattlesIcreatedXml";
                    myJSON.sEcho    = patRatesFunctions.CommonFunctions.createRattleHTML(rattleID, DateTime.Now.ToShortTimeString(), rattle);
                    myJSON.sColumns = "#R" + rattleID;
                    patRatesFunctions.CommonFunctions.cacheRemove(cacheFans);
                    myJSON.sError = 000;
                    return(myJSON);
                }
                catch (SqlException sqlErr)
                {
                    myJSON.sEcho  = sqlErr.Message;
                    myJSON.sError = 557;
                    return(myJSON);
                }
            }
        }
        catch (Exception err)
        {
            myJSON.sEcho  = err.Message;
            myJSON.sError = 558;
            return(myJSON);
        }
    }
    public datTabJSON updateEmail(string id, char flag)
    {
        datTabJSON rtnCls = new datTabJSON();

        try
        {
            if (!User.Identity.IsAuthenticated)
            {
                rtnCls.sError = 904;
                return(rtnCls);
            }
            string myID = Membership.GetUser().ProviderUserKey.ToString();
            if (string.IsNullOrEmpty(id))
            {
                rtnCls.sError = 913;
                return(rtnCls);
            }

            if (char.IsWhiteSpace(flag))
            {
                rtnCls.sError = 914;
                return(rtnCls);
            }


            if (flag.ToString() == "Y" || flag.ToString() == "N")
            {
            }
            else
            {
                rtnCls.sError = 915;
                return(rtnCls);
            }


            string connStr    = WebConfigurationManager.ConnectionStrings["eastManDB"].ConnectionString;
            string storedProc = "SNEmailNotificationChg";
            using (SqlConnection con = new SqlConnection(connStr))
            {
                SqlCommand cmd = new SqlCommand(storedProc, con);
                cmd.CommandType = CommandType.StoredProcedure;

                cmd.Parameters.Add(new SqlParameter("@myID", SqlDbType.VarChar, 50));
                cmd.Parameters.Add(new SqlParameter("@shopID", SqlDbType.VarChar, 50));
                cmd.Parameters.Add(new SqlParameter("@email", SqlDbType.Char, 1));
                cmd.Parameters["@myID"].Value   = myID;
                cmd.Parameters["@shopID"].Value = id;
                cmd.Parameters["@email"].Value  = flag;
                //System.Windows.Forms.MessageBox.Show("4" + typ);
                try
                {
                    con.Open();
                    int rtncode = cmd.ExecuteNonQuery();
                    //System.Windows.Forms.MessageBox.Show("5" + typ);
                    con.Close();
                    //System.Windows.Forms.MessageBox.Show("6" + typ);

                    string cacheFans = myID + "SNetwrkMyFansDataTab";
                    CommonFunctions.cacheRemove(cacheFans);
                    string HTMLstr;
                    if (flag.ToString() == "Y")
                    { // This means that the Flag is now set to Yes. So we need to set it to "N" on the page
                        HTMLstr = "<a href='#' onclick='updateMsgFlag(" + '"' + myID + '"' + "," + '"' + "N" + '"' + "," + '"' + "Email" + '"' + ",this)'; Title='Stop Email Notification'> <img style='outline-style:none;border-style:none;' alt='Stop Email Notification' src='../Images/mail-delete.png' /> </a>";
                    }
                    else
                    {
                        HTMLstr = "<a href='#' onclick='updateMsgFlag(" + '"' + myID + '"' + "," + '"' + "Y" + '"' + "," + '"' + "Email" + '"' + ",this)';Title='Get Email Notification'> <img style='outline-style:none;border-style:none;' alt='Get Email Notification' src='../Images/mail-add.png' /></a>";
                    }
                    rtnCls.sError = 0;
                    rtnCls.sEcho  = HTMLstr;
                }
                catch (SqlException sqlErr)
                {
                    //System.Windows.Forms.MessageBox.Show(sqlErr.Message);
                    rtnCls.sError = 911;
                }

                return(rtnCls);
            }
        }
        catch (Exception err)
        {
            rtnCls.sError = 912;
            return(rtnCls);
        }
    }