Beispiel #1
0
        private void update_user_for_contribution(TableTopDataClassesDataContext db, int contribution_id, int new_user_id, DateTime dt)
        {
            var mapping = from m in db.Collection_Contribution_Mappings
                          where m.contribution_id == contribution_id
                          select m;

            if (mapping.Count() == 0)
            {
                return;
            }
            Collection_Contribution_Mapping c1 = mapping.First <Collection_Contribution_Mapping>();

            if (mapping.Count() == 1)
            {
                var colls = from c in db.Collections
                            where c.id == c1.collection_id
                            select c;
                if (colls.Count() == 1)
                {
                    Collection c2 = colls.First <Collection>();
                    c2.user_id = new_user_id;
                    db.SubmitChanges();
                }
                //var mapping2 = from m in db.Collection_Contribution_Mappings
                //               where m.collection_id == c1.collection_id
                //               select m;
                //if (mapping2.Count() != 1)
                //    should_create_collection = true;
            }
        }
Beispiel #2
0
        private bool create_contribution(SNote note, SMedia media, DateTime note_date, DateTime note_mod_date, string content, string note_id, bool is_design_idea, int collection_id, string status, TableTopDataClassesDataContext db)
        {
            Contribution c = new Contribution();

            c.date          = note_date;
            c.modified_date = note_mod_date;
            c.location_id   = find_location_id(note);
            string note_content = content;

            if (media != null)
            {
                c.media_url = media.link;
            }
            else
            {
                c.media_url = "";
            }

            c.note   = note_content;
            c.status = status;
            if (is_design_idea)
            {
                c.tags = "Design Idea";
            }
            else
            {
                if (media != null)
                {
                    c.tags = media.kind;
                }
                else
                {
                    c.tags = note.kind;
                }
            }
            c.technical_info = note_id;
            c.web_username   = note.webusername;
            db.Contributions.InsertOnSubmit(c);
            if (!SubmitChangesToLocalDB(db))
            {
                return(false);
            }
            //
            Collection_Contribution_Mapping map = new Collection_Contribution_Mapping();

            map.collection_id   = collection_id;
            map.contribution_id = c.id;
            map.date            = note_date;
            db.Collection_Contribution_Mappings.InsertOnSubmit(map);
            if (!SubmitChangesToLocalDB(db))
            {
                return(false);
            }
            return(true);
        }
Beispiel #3
0
        private void button_add_contrib_Click(object sender, EventArgs e)
        {
            try
            {
                int uid = cached_users[comboBox_users_addcontrib.SelectedIndex].id;
                int cid = cached_user_collections[comboBox_collections_addcontrib.SelectedIndex].id;
                int lid = cached_locations[comboBox_locations_addcontrib.SelectedIndex].id;

                TableTopDataClassesDataContext db = Configurations.GetTableTopDB();
                Contribution c = new Contribution();
                c.date          = DateTime.Now;
                c.modified_date = DateTime.Now;
                c.location_id   = lid;
                c.media_url     = textBox_mediaurl_addcontrib.Text;
                c.note          = textBox_desc_addcontrib.Text;
                c.tags          = textBox_tags_addcontrib.Text;
                c.status        = "";
                db.Contributions.InsertOnSubmit(c);
                db.SubmitChanges();

                if (checkBox_new_collection.Checked)
                {
                    Collection c2 = new Collection();
                    c2.activity_id = cached_activities_addcontrib[comboBox_activities_addcontrib.SelectedIndex].id;
                    c2.date        = DateTime.Now;
                    c2.user_id     = uid;
                    c2.name        = Configurations.GetDate_Formatted(c2.date);
                    db.Collections.InsertOnSubmit(c2);
                    db.SubmitChanges();
                    cid = c2.id;
                }

                Collection_Contribution_Mapping ccm = new Collection_Contribution_Mapping();
                ccm.collection_id   = cid;
                ccm.contribution_id = c.id;
                ccm.date            = DateTime.Now;
                db.Collection_Contribution_Mappings.InsertOnSubmit(ccm);
                db.SubmitChanges();
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message + "\r\n--\r\n" + ex.StackTrace);
            }
            MessageBox.Show("Contribution was added successfully.");
        }
Beispiel #4
0
        private void update_or_create_collection(TableTopDataClassesDataContext db, int contribution_id, int new_activity_id, DateTime dt)
        {
            bool should_create_collection = false;

            var mapping = from m in db.Collection_Contribution_Mappings
                          where m.contribution_id == contribution_id
                          select m;

            if (mapping.Count() == 0)
            {
                return;
            }
            Collection_Contribution_Mapping c1 = mapping.First <Collection_Contribution_Mapping>();

            if (mapping.Count() != 1)
            {
                should_create_collection = true;
            }
            else
            {
                var colls = from c in db.Collections
                            where c.id == c1.collection_id
                            select c;
                if (colls.Count() == 1)
                {
                    Collection c2 = colls.First <Collection>();
                    c2.activity_id = new_activity_id;
                    db.SubmitChanges();
                }
                //var mapping2 = from m in db.Collection_Contribution_Mappings
                //               where m.collection_id == c1.collection_id
                //               select m;
                //if (mapping2.Count() != 1)
                //    should_create_collection = true;
            }
            //int user_id = c1.Collection.user_id;
            //if (should_create_collection)
            //{
            //    // create new collection
            //    Collection c2 = new Collection();
            //    c2.activity_id = new_activity_id;
            //    c2.date = dt;
            //    c2.name = Configurations.GetDate_Formatted(dt);
            //    c2.user_id = user_id;
            //    db.Collections.InsertOnSubmit(c2);
            //    db.SubmitChanges();
            //    var mapping_old = from m in db.Collection_Contribution_Mappings
            //                      where m.contribution_id == contribution_id
            //                      select m;
            //    db.Collection_Contribution_Mappings.DeleteAllOnSubmit(mapping_old);
            //    db.SubmitChanges();
            //    Collection_Contribution_Mapping mapping_new = new Collection_Contribution_Mapping();
            //    mapping_new.collection_id = c2.id;
            //    mapping_new.contribution_id = contribution_id;
            //    mapping_new.date = dt;
            //    db.SubmitChanges();
            //}
            //else
            //{
            //    c1.Collection.activity_id = new_activity_id;
            //    db.SubmitChanges();
            //}
        }
        void submit_text(RoutedEventArgs e)
        {
            bool is_design_idea = hide_expander;
            if (is_design_idea)
            {
                Contribution idea = new Contribution();
                idea.date = DateTime.Now;
                idea.location_id = 0;
                idea.note = this.GetActiveTextBox().Text;
                idea.tags = "Design Idea";
                database_manager.InsertDesignIdea(idea, this.comment_user_id);
                int collection_id = configurations.get_or_create_collection(this.comment_user_id, 1, DateTime.Now);
                Collection_Contribution_Mapping map = new Collection_Contribution_Mapping();
                map.collection_id = collection_id;
                map.contribution_id = idea.id;
                map.date = DateTime.Now;
                database_manager.InsertCollectionContributionMapping(map);

                if (the_item.Content != null)
                    ((design_ideas_listbox)the_item.Content).list_all_design_ideas();
                //window_manager.load_design_ideas();
                log.WriteInteractionLog(42, "Idea" + "; Text: " + this.GetActiveTextBox().Text + "; object_type: " + _object_type + "; object_id: " + _object_id.ToString(), ((TouchEventArgs)e).TouchDevice);
                window_manager.close_submit_design_idea_window((window_frame)this.parent, idea.note);
                //if (((design_ideas_listbox)the_item.Content).parent != null)
                //    ((design_ideas_listbox)the_item.Content).parent.list_all_design_ideas();
            }
            else
            {
                Feedback comment = new Feedback();
                comment.date = DateTime.Now;
                comment.note = this.GetActiveTextBox().Text;
                comment.object_id = this._object_id;
                comment.object_type = this._object_type.ToString();
                //if (comments_listbox._list.SelectedIndex == -1)
                //    comment.parent_id = 0;
                //else
                //{
                    //int p_id = (int)((item_generic)comments_listbox._list.Items[comments_listbox._list.SelectedIndex]).Tag;
                if (is_reply)
                    comment.parent_id = reply_id;
                else
                    comment.parent_id = 0;
                //}
                comment.technical_info = "";
                comment.type_id = 1;
                comment.user_id = this.comment_user_id;
                database_manager.InsertFeedback(comment);
                if (is_reply)
                    log.WriteInteractionLog(42, "Comment; Reply id: " + reply_id + "; Text: " + this.GetActiveTextBox().Text + "; object_type: " + _object_type + "; object_id: " + _object_id.ToString(), ((TouchEventArgs)e).TouchDevice);
                else
                    log.WriteInteractionLog(42, "Comment; Text: " + this.GetActiveTextBox().Text + "; object_type: " + _object_type + "; object_id: " + _object_id.ToString(), ((TouchEventArgs)e).TouchDevice);

                if (this.the_item.Content != null)
                {
                    try
                    {
                        item_generic_v2 v2 = (item_generic_v2)this.the_item.Content;
                        v2.number.Text = (Convert.ToInt32(v2.number.Text) + 1).ToString();
                    }
                    catch (Exception) { }
                }
                this.list_all_comments();

                if (this._object_type.ToString() == "nature_net.Contribution")
                    window_manager.load_design_ideas_sync();
            }
            //this.GetActiveTextBox().SelectAll();
            cancel_comment_auth_clicked(null, null);
            GotoDefaultMode();
            comment_textbox_default.Text = "";
            comment_textbox_reply.Text = "";
            CheckTextBoxText();
        }