Exemplo n.º 1
0
        /// <summary>
        /// Gets the publication.
        /// </summary>
        /// <param name="publication">The publication.</param>
        /// <returns></returns>
        private Model.Publication.Publication getPublication(publication publication)
        {
            Model.Publication.Publication newPublication = new XareuServices.Model.Publication.Publication();

            newPublication.Author.Email = publication.user.user_email;
            newPublication.Author.Id    = publication.user.user_id;
            newPublication.Author.Nick  = publication.user.user_nick;
            newPublication.Author.Karma = publication.user.user_karma;

            newPublication.CreationDateTime = publication.publication_datetime;

            newPublication.Id = publication.publication_id;

            newPublication.Place.Id = publication.place_tag_id;

            newPublication.Text = publication.publication_text;

            newPublication.Karma = (float)publication.publication_karma;

            newPublication.IsPrivate = publication.publlication_is_private;

            try
            {
                newPublication.IsQuestion = (bool)publication.publication_is_question;
            }
            catch { newPublication.IsQuestion = false; }

            try
            {
                newPublication.AnswersTo = (long)publication.publication_answer_to;
            }
            catch { newPublication.AnswersTo = 0; }

            return(newPublication);
        }
Exemplo n.º 2
0
        /// <summary>
        /// Edita los valores de una publicación determinada substituyéndolos por los indicados en el parámetro
        /// </summary>
        /// <param name="publication">Datos para editar la publicación</param>
        /// <returns>
        /// True si se pudo editar, false en caso contrario
        /// </returns>
        public bool EditPublication(XareuServices.Model.Publication.Publication publication)
        {
            DAL.Linq.publication actualPublicationData;
            actualPublicationData = (from publications in data.publications
                                     where publications.publication_id == publication.Id
                                     select publications).First <publication>();

            try
            {
                actualPublicationData.place_tag_id            = publication.Place.Id;
                actualPublicationData.publication_datetime    = publication.CreationDateTime;
                actualPublicationData.publication_is_question = publication.IsQuestion;
                actualPublicationData.publlication_is_private = publication.IsPrivate;
                actualPublicationData.publication_karma       = publication.Karma;
                actualPublicationData.publication_text        = publication.Text;
                actualPublicationData.user_id_author          = publication.Author.Id;

                data.SubmitChanges();
                return(true);
            }
            catch
            {
                return(false);
            }
        }
Exemplo n.º 3
0
 /// <summary>
 /// Añade una nueva publicación a la base de datos
 /// </summary>
 /// <param name="publication">Publicación que queremos añadir</param>
 /// <param name="publicationID">ID de la publicación que ha añadido</param>
 /// <returns>
 /// True si la pudo añadir, false en caso contrario
 /// </returns>
 public bool AddPublication(XareuServices.Model.Publication.Publication publication, out long publicationID)
 {
     Linq.publication newPublication = this.convertToLinqPublication(publication);
     publicationID = 0;
     try
     {
         data.publications.InsertOnSubmit(newPublication);
         data.SubmitChanges();
         publicationID = this.getLastestPublicationID();
         return(true);
     }
     catch
     {
         return(false);
     }
 }
Exemplo n.º 4
0
 /// <summary>
 /// Adds the publication.
 /// </summary>
 /// <param name="userID">The user ID.</param>
 /// <param name="token">The token.</param>
 /// <param name="newToken">The new token.</param>
 /// <param name="publication">The publication.</param>
 /// <param name="publicationID">The publication ID.</param>
 /// <returns></returns>
 public bool AddPublication(long userID, Guid token, out Guid newToken, XareuServices.Model.Publication.Publication publication, out long publicationID)
 {
     if (loginService.UseToken(userID, token, out newToken))
     {
         try
         {
             if (publication.Author.Id == userID)
             {
                 publicationDAO.AddPublication(publication, out publicationID);
                 return(true);
             }
             throw new Exception("User is not able to add that publication");
         }
         catch
         {
             throw new Exception("Adding publication error");
         }
     }
     throw new Exception("Login error");
 }
Exemplo n.º 5
0
 /// <summary>
 /// Edits the publication.
 /// </summary>
 /// <param name="userID">The user ID.</param>
 /// <param name="token">The token.</param>
 /// <param name="newToken">The new token.</param>
 /// <param name="publication">The publication.</param>
 /// <returns>True if it was OK, false otherwise</returns>
 public bool EditPublication(long userID, Guid token, out Guid newToken, XareuServices.Model.Publication.Publication publication)
 {
     if (loginService.UseToken(userID, token, out newToken))
     {
         try
         {
             if ((publicationDAO.GetPublication(publication.Id).Author.Id == userID) || (userDAO.IsAdmin(userID)))
             {
                 publicationDAO.EditPublication(publication);
                 return(true);
             }
             throw new Exception("User is not able to edit that publication");
         }
         catch
         {
             throw new Exception("Edit publication error");
         }
     }
     throw new Exception("Login error");
 }
Exemplo n.º 6
0
        /// <summary>
        /// Gets the publication.
        /// </summary>
        /// <param name="publication">The publication.</param>
        /// <returns></returns>
        private Model.Publication.Publication getPublication(publication publication)
        {
            Model.Publication.Publication newPublication = new XareuServices.Model.Publication.Publication();

            newPublication.Author.Email     = publication.user.user_email;
            newPublication.Author.Id        = publication.user.user_id;
            newPublication.Author.Nick      = publication.user.user_nick;
            newPublication.Author.Karma     = publication.user.user_karma;
            newPublication.CreationDateTime = publication.publication_datetime;
            newPublication.Id            = publication.publication_id;
            newPublication.Place.Id      = publication.place_tag_id;
            newPublication.Text          = publication.publication_text;
            newPublication.Karma         = (float)publication.publication_karma;
            newPublication.IsPrivate     = publication.publlication_is_private;
            newPublication.IsQuestion    = publication.publication_is_question.GetValueOrDefault(false);
            newPublication.AnswersTo     = publication.publication_answer_to.GetValueOrDefault(0);
            newPublication.PositiveVotes = publication.positive_votes.GetValueOrDefault(0);
            newPublication.NegativeVotes = publication.negative_votes.GetValueOrDefault(0);

            return(newPublication);
        }
Exemplo n.º 7
0
 /// <summary>
 /// Edits the publication.
 /// </summary>
 /// <param name="userID">The user ID.</param>
 /// <param name="token">The token.</param>
 /// <param name="newToken">The new token.</param>
 /// <param name="publication">The publication.</param>
 /// <returns>True if it was OK, false otherwise</returns>
 public bool EditPublication(long userID, Guid token, out Guid newToken, XareuServices.Model.Publication.Publication publication)
 {
     return(publicationService.EditPublication(userID, token, out newToken, publication));
 }
Exemplo n.º 8
0
 /// <summary>
 /// Adds the publication.
 /// </summary>
 /// <param name="userID">The user ID.</param>
 /// <param name="token">The token.</param>
 /// <param name="newToken">The new token.</param>
 /// <param name="publication">The publication.</param>
 /// <param name="publicationID">The publication ID.</param>
 /// <returns></returns>
 public bool AddPublication(long userID, Guid token, out Guid newToken, XareuServices.Model.Publication.Publication publication, out long publicationID)
 {
     return(publicationService.AddPublication(userID, token, out newToken, publication, out publicationID));
 }