//
        // Aceitar um pedido de amizade
        //
        public static bool AceitarPedido(string username1, string username2, int forca, string tag)
        {
            Ligacao ligacao = AddLigacao(username1, username2, tag, forca);

            if (ligacao != null)
            {
                ligacao.Estado = 1;
                ligacao.Save();

                var x = new IA_AR.Utils();

                ligacao = Ligacao.LoadByUserNames(username2, username1);
                if (ligacao != null)
                {
                    ligacao.Estado = 1;
                    ligacao.Save();

                    x.insertLig(username1.ToLower(), username2.ToLower(), forca);
                    x.insertLig(username2.ToLower(), username1.ToLower(), ligacao.ForcaDeLigacao);

                    return(true);
                }
                return(false);
            }
            return(false);
        }
        //
        //
        // Mudar o estado da Tag
        public bool MudarEstadoTagInt(int estado)
        {
            if (estado > -2 && estado < 2)
            {
                Estado = estado;
                Save();
                var x = new IA_AR.Utils();
                if (Estado == -1)
                {
                    x.deleteTag(Nome.ToLower());
                }
                return(Gravado);
            }

            return(false);
        }
        //
        //
        //
        public static void RefreshTagsUser(IList <string> tagsAnteriores, IList <string> tagsActuais, string username)
        {
            IList <int> idAdd = new List <int>();
            IList <int> idRem = new List <int>();

            if (tagsActuais.Count == 1 && tagsActuais[0].Equals(""))
            {
                tagsActuais.Remove(tagsActuais[0]);
            }

            IList <string> list = new List <string>(tagsActuais);

            foreach (string tagN in list)
            {
                Tag tag = Tag.LoadTagByNome(tagN);
                if (tagsAnteriores.Contains(tagN))
                {
                    tagsAnteriores.Remove(tagN);
                    tagsActuais.Remove(tagN);
                }
                else
                {
                    tag.Ocorrencia(1);
                    idAdd.Add(tag.ID);
                }
            }

            foreach (string tagR in tagsAnteriores)
            {
                Tag tag = Tag.LoadTagByNome(tagR);
                tag.Ocorrencia(-1);
                idRem.Add(tag.ID);
                var x = new IA_AR.Utils();
                x.deleteFromTag(tag.Nome.ToLower(), username.ToLower());
            }

            string userId = User.LoadByUserName(username).UniqueIdentifierUserId;

            AdicionarTagsUser(userId, idAdd);
            RemoverTagsUser(userId, idRem);
        }
        // Métodos
        //
        //
        // Adicionar uma Tag na Bd, havendo a possibilidade de retornar null
        public static Tag AdicionarTag(string nome, string username)
        {
            Tag tag = Tag.LoadTagByNome(nome);

            if (tag == null)
            {
                var proxy = new ModuloIA.ModuloIaClient();
                var n     = proxy.traduzir(nome.ToLower());

                if (n.Trim().Contains("-1"))
                {
                    tag      = new Tag(false);
                    tag.Nome = nome;
                    tag.Save();

                    var x = new IA_AR.Utils();
                    x.insertTag(nome.ToLower(), "[" + username.ToLower() + "]");
                }
                else
                {
                    tag      = new Tag(false);
                    tag.Nome = n.Trim().ToLower();
                    tag.Save();

                    var x = new IA_AR.Utils();
                    x.insertTag(n.ToLower(), "[" + username.ToLower() + "]");
                }



                return(tag);
            }
            else
            {
                var x = new IA_AR.Utils();
                x.insertIntoTag(nome.ToLower(), username.ToLower());
            }

            return(tag);
        }
        //
        // Aceitar um pedido de amizade
        //
        public static bool AceitarPedido(string username1, string username2, int forca, string tag)
        {
            Ligacao ligacao = AddLigacao(username1, username2, tag, forca);

            if (ligacao != null)
            {
                ligacao.Estado = 1;
                ligacao.Save();

                var x = new IA_AR.Utils();

                ligacao = Ligacao.LoadByUserNames(username2, username1);
                if (ligacao != null)
                {
                    ligacao.Estado = 1;
                    ligacao.Save();

                    x.insertLig(username1.ToLower(), username2.ToLower(), forca);
                    x.insertLig(username2.ToLower(), username1.ToLower(), ligacao.ForcaDeLigacao);

                    return true;
                }
                return false;
            }
            return false;
        }
        //
        //
        // Mudar o estado da Tag
        public bool MudarEstadoTagInt(int estado)
        {
            if (estado > -2 && estado < 2)
            {

                Estado = estado;
                Save();
                var x = new IA_AR.Utils();
                if (Estado == -1)
                {
                    x.deleteTag(Nome.ToLower());
                }
                return Gravado;
            }

            return false;
        }
        //
        //
        //
        public static void RefreshTagsUser(IList<string> tagsAnteriores, IList<string> tagsActuais, string username)
        {
            IList<int> idAdd = new List<int>();
            IList<int> idRem = new List<int>();

            if(tagsActuais.Count==1 && tagsActuais[0].Equals(""))
            {

                tagsActuais.Remove(tagsActuais[0]);

            }

            IList<string> list = new List<string>(tagsActuais);

            foreach(string tagN in list)
            {
                Tag tag = Tag.LoadTagByNome(tagN);
                if (tagsAnteriores.Contains(tagN))
                {
                    tagsAnteriores.Remove(tagN);
                    tagsActuais.Remove(tagN);
                }
                else
                {
                    tag.Ocorrencia(1);
                    idAdd.Add(tag.ID);
                }
            }

            foreach (string tagR in tagsAnteriores)
            {

                Tag tag = Tag.LoadTagByNome(tagR);
                tag.Ocorrencia(-1);
                idRem.Add(tag.ID);
                var x = new IA_AR.Utils();
                x.deleteFromTag(tag.Nome.ToLower(), username.ToLower());

            }

            string userId = User.LoadByUserName(username).UniqueIdentifierUserId;

            AdicionarTagsUser(userId, idAdd);
            RemoverTagsUser(userId, idRem);
        }
 public static void AdicionarTagsTraducao(string tag1, string tag2)
 {
     var x = new IA_AR.Utils();
     x.insertTraducao(tag1.ToLower(), tag2.ToLower());
 }
        // Métodos
        //
        //
        // Adicionar uma Tag na Bd, havendo a possibilidade de retornar null
        public static Tag AdicionarTag(string nome, string username)
        {
            Tag tag = Tag.LoadTagByNome(nome);
            if (tag == null)
            {
                var proxy = new ModuloIA.ModuloIaClient();
                var n = proxy.traduzir(nome.ToLower());

                if(n.Trim().Contains("-1"))
                {
                    tag = new Tag(false);
                    tag.Nome = nome;
                    tag.Save();

                    var x = new IA_AR.Utils();
                    x.insertTag(nome.ToLower(), "[" + username.ToLower() + "]");
                }
                else
                {
                    tag = new Tag(false);
                    tag.Nome = n.Trim().ToLower();
                    tag.Save();

                    var x = new IA_AR.Utils();
                    x.insertTag(n.ToLower(), "[" + username.ToLower() + "]");
                }

                return tag;
            }
            else
            {
                var x = new IA_AR.Utils();
                x.insertIntoTag(nome.ToLower(), username.ToLower());
            }

            return tag;
        }
Пример #10
0
        public static void AdicionarTagsTraducao(string tag1, string tag2)
        {
            var x = new IA_AR.Utils();

            x.insertTraducao(tag1.ToLower(), tag2.ToLower());
        }