PersonNotUploadWindow.on_button_close_clicked C# (CSharp) Method

on_button_close_clicked() protected method

protected on_button_close_clicked ( object o, EventArgs args ) : void
o object
args EventArgs
return void
    protected override void on_button_close_clicked(object o, EventArgs args)
    {
        int personID;

        bool bannedToUploadBefore;
        /*
           bannedUploadBefore doesn't means that this person has not been upload before,
           it means that a person has been added to personNotUpload table in the possible previous upload of that session
           (remember a session can be uploaded more than one time)
           */

        bool uploadNow;

        Gtk.TreeIter iter;
        bool okIter = store.GetIterFirst(out iter);
        if(okIter) {
            do {
                personID = Convert.ToInt32(store.GetValue (iter, 1));
                bannedToUploadBefore = Util.FoundInArrayList(initiallyUnchecked, personID.ToString());
                uploadNow = (bool) store.GetValue (iter, 0);

                /*
                   if a person is bannedToUploadBefore, means that
                   in previous upload of the same session, this person has been added to personNotUpload table
                   then:
                   - if bannedToUploadBefore and have to uploadNow, delete row on personNotUpload
                   - if bannedToUploadBefore and NOT have to uploadNow, nothing to be done
                   - if NOT bannedToUploadBefore and have to uploadNow, nothing to be done
                   - if NOT bannedToUploadBefore and NOT have to uploadNow, a row on personNotUpload should be added
                 */

                if(bannedToUploadBefore && uploadNow)
                    SqlitePersonSessionNotUpload.Delete(personID, sessionID);
                else if (! bannedToUploadBefore && ! uploadNow)
                    SqlitePersonSessionNotUpload.Add(personID, sessionID);
            } while ( store.IterNext(ref iter) );
        }

        fakeButtonDone.Click();

        PersonNotUploadWindowBox.person_recuperate.Hide();
        PersonNotUploadWindowBox = null;
    }