protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { Business.Campeonatos.Support.Jogo jogo = new BolaoNet.Business.Campeonatos.Support.Jogo(base.UserName); //Se estiver passando o id do jogo if (Request.QueryString["IDJogo"] != null) { long idJogo = Convert.ToInt64(Request.QueryString["IDJogo"].ToString()); jogo.Campeonato = CurrentCampeonato; jogo.IDJogo = idJogo; jogo.Load(); this.ctlJogoDetail.Jogo = jogo; }//endif passando id do jogo Business.Boloes.Support.Bolao business = new BolaoNet.Business.Boloes.Support.Bolao(base.UserName, CurrentBolao.Nome); #region Buscando os pontos dos jogos List <Model.Boloes.BolaoCriterioPontos> listCriteriosPontos = new List <Model.Boloes.BolaoCriterioPontos>(); IList <Framework.DataServices.Model.EntityBaseData> auxlist = business.LoadCriteriosPontos(null); for (int c = 0; c < 20; c++) { Model.Boloes.BolaoCriterioPontos criteriosPontos = new BolaoNet.Model.Boloes.BolaoCriterioPontos(); criteriosPontos.Bolao = new BolaoNet.Model.Boloes.Bolao(CurrentBolao.Nome); criteriosPontos.CriterioID = (Model.Boloes.BolaoCriterioPontos.CriteriosID)(c + 1); listCriteriosPontos.Add(criteriosPontos); } foreach (Model.Boloes.BolaoCriterioPontos pontos in auxlist) { if (pontos.Pontos != 0) { listCriteriosPontos[(int)pontos.CriterioID - 1].Pontos = pontos.Pontos; } } Criterios = listCriteriosPontos; #endregion #region Buscando os pontos dos times List <Model.Boloes.BolaoCriterioPontosTimes> listCriteriosPontosTimes = new List <BolaoNet.Model.Boloes.BolaoCriterioPontosTimes>(); auxlist = business.LoadCriteriosPontosTimes(null); foreach (Model.Boloes.BolaoCriterioPontosTimes times in auxlist) { listCriteriosPontosTimes.Add(times); } CriteriosTimes = listCriteriosPontosTimes; #endregion #region Buscando a classificação do campeonato IList <Model.Boloes.BolaoMembros> listClassificacao = business.LoadClassificacao(0); #endregion #region Buscando as apostas do Usuários List <Model.Boloes.Simulation.JogoUsuarioPosicao> listJogosPos = new List <BolaoNet.Model.Boloes.Simulation.JogoUsuarioPosicao>(); Business.Boloes.Support.JogoUsuario businessJogos = new BolaoNet.Business.Boloes.Support.JogoUsuario(base.UserName); businessJogos.Bolao = CurrentBolao; //Model.Campeonatos.Jogo jogo = new BolaoNet.Model.Campeonatos.Jogo(380); //jogo.Campeonato = CurrentCampeonato; auxlist = businessJogos.LoadApostasByJogo(CurrentBolao, jogo, null); foreach (Model.Boloes.JogoUsuario aposta in auxlist) { Model.Boloes.Simulation.JogoUsuarioPosicao apostaPosicao = new Model.Boloes.Simulation.JogoUsuarioPosicao(); apostaPosicao.CopyAposta(aposta); for (int c = listClassificacao.Count - 1; c >= 0; c--) { if (string.Compare(apostaPosicao.UserName, listClassificacao[c].UserName, true) == 0) { apostaPosicao.TotalPontos = listClassificacao[c].TotalPontos; apostaPosicao.LastPontos = listClassificacao[c].TotalPontos; apostaPosicao.Posicao = listClassificacao[c].Posicao; apostaPosicao.LastPosicao = listClassificacao[c].Posicao; apostaPosicao.LastApostaPontos = apostaPosicao.ApostaPontos.Pontos; listClassificacao.RemoveAt(c); break; } } listJogosPos.Add(apostaPosicao); } JogoUsuarios = listJogosPos; #endregion this.grdJogosUsuarios.DataSource = OrderPontos(listJogosPos); this.grdJogosUsuarios.DataBind(); } }
protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { Business.Campeonatos.Support.Jogo jogo = null; //Se estiver passando o id do jogo if (Request.QueryString["IDJogo"] != null) { long idJogo = Convert.ToInt64(Request.QueryString["IDJogo"].ToString()); jogo = new BolaoNet.Business.Campeonatos.Support.Jogo(base.UserName); jogo.Campeonato = CurrentCampeonato; jogo.IDJogo = idJogo; jogo.Load(); this.ctlJogoDetail.Jogo = jogo; if (jogo.PartidaValida) { Model.Boloes.JogoUsuario social = new Business.Boloes.Support.JogoUsuario(base.UserName).LoadSocialNetwork(base.BaseCurrentBolao, base.UserName, jogo); if (social.DataFacebook == DateTime.MinValue) { this.ctlMenuTools.FaceVisible = true; } } }//endif passando id do jogo //Adicionando os dados do facebook if (Request["code"] != null) { Model.Boloes.JogoUsuario jogoUsuario = new Model.Boloes.JogoUsuario(); jogoUsuario.Copy(jogo); jogoUsuario.Bolao = base.BaseCurrentBolao; jogoUsuario.UserName = base.UserName; IList <Framework.DataServices.Model.EntityBaseData> res = new Business.Boloes.Support.JogoUsuario(base.UserName, jogoUsuario).SelectAll("JogosUsuarios.IdJogo='" + jogo.IDJogo + "' and JogosUsuarios.UserName='******'"); jogoUsuario = (Model.Boloes.JogoUsuario)res[0]; string message = ""; string caption = "Resultado: " + jogo.Time1.Nome + " " + jogo.GolsTime1.ToString() + " x " + jogo.GolsTime2.ToString() + " " + jogo.Time2.Nome; string description = "Minha Aposta: " + jogo.Time1.Nome + " " + jogoUsuario.ApostaTime1.ToString() + " x " + jogoUsuario.ApostaTime2.ToString() + " " + jogo.Time2.Nome + " - Pontos: " + jogoUsuario.Pontos; string imagePontos = ""; message = ConfigurationManager.AppSettings["Facebook_Pontos_" + jogoUsuario.Pontos.ToString()]; imagePontos = ConfigurationManager.AppSettings["Facebook_images"] + "pontos" + jogoUsuario.Pontos + ".gif"; if (jogoUsuario.Pontos == 10 && (string.Compare(jogo.Time1.Nome, "Brasil", true) == 0 || string.Compare(jogo.Time2.Nome, "Brasil", true) == 0)) { message = ConfigurationManager.AppSettings["Facebook_Pontos_10_Brasil"]; imagePontos = ConfigurationManager.AppSettings["Facebook_images"] + "pontos" + jogoUsuario.Pontos + "_Brasil.gif"; } if (string.IsNullOrEmpty(message)) { switch (jogoUsuario.Pontos) { case 0: message = "Não tive sorte neste jogo, que zebra, não acertei nada!"; break; case 1: message = "Consegui acertar pelo menos o gol de uma das duas seleções."; break; case 2: message = "Que chance eu perdi...pelo menos acertei o gol de uma das duas seleções"; break; case 3: message = "Acertei o ganhador do jogo!"; break; case 4: message = "Quase, acertei a vitória de uma das seleções e o gol de uma delas!"; break; case 5: message = "Resultado difícil, mas acertei o empate!"; break; case 6: message = "Já que é jogo do Brasil, consegui acertar a vitória da seleção."; break; case 8: message = "Quase em cheio! Acertei a vitória da seleção e quantidade de gols de uma delas! Mas como é jogo do Brasil, perdi uma chance boa!"; break; case 10: if (string.Compare(jogo.Time1.Nome, "Brasil") == 0 || string.Compare(jogo.Time2.Nome, "Brasil") == 0) { message = "Jogo do Brasil é sempre difícil, ainda mais quando ocorre empate."; } else { message = "Na mosca! Muito fácil ... rs"; } break; case 20: message = "No jogo do Brasil é melhor ainda, consegui acertar em cheio!!!"; break; } } Dictionary <string, string> tokens = new Dictionary <string, string>(); string url = string.Format("https://graph.facebook.com/oauth/access_token?client_id={0}&redirect_uri={1}&scope={2}&code={3}&client_secret={4}", _applicationKey, Request.Url.AbsoluteUri, _scope, Request["code"].ToString(), _applicationSecret); HttpWebRequest request = WebRequest.Create(url) as HttpWebRequest; using (HttpWebResponse response = request.GetResponse() as HttpWebResponse) { StreamReader reader = new StreamReader(response.GetResponseStream()); string vals = reader.ReadToEnd(); foreach (string token in vals.Split('&')) { //meh.aspx?token1=steve&token2=jake&... tokens.Add(token.Substring(0, token.IndexOf("=")), token.Substring(token.IndexOf("=") + 1, token.Length - token.IndexOf("=") - 1)); } } string access_token = tokens["access_token"]; var client = new FacebookClient(access_token); string originalQuery = "/Boloes/ApostasJogos.aspx?IdJogo=" + Request.QueryString["IDJogo"].ToString(); var postParams = new { name = "BolãoNET", caption = caption, description = description, message = message, link = Request.Url.Host + originalQuery, picture = imagePontos, }; object resultFacebook = client.Post("/me/feed", postParams); bool result = new Business.Boloes.Support.JogoUsuario(base.UserName).UpdateFacebook(base.BaseCurrentBolao, base.UserName, jogo); Response.Redirect("~" + originalQuery); } //endif code (Facebook) } //end if IsPostBack BindGrid(); }