Exemplo n.º 1
0
        private void get_Entity(int groupid, Model.Group m_group)
        {
            //string sql =
            //   "select student.name,student.id,project_introduction,project_name from student,groupp where student.groupId=groupp.groupid and groupp.groupid = @gid;";
            string sql = "SELECT s.name,s.id,project_introduction,project_name FROM [dbo].[groupp],dbo.student s where (mid1 = s.id or mid2 = s.id or mid3 = s.id or groupp.headman = s.id) and groupp.groupid = @gid;";

            SqlParameter[] paras = new SqlParameter[]
            {
                new SqlParameter("@gid", groupid)
            };
            DataTable dt = SqlDbHelper.ExecuteDataTable(sql.ToString(), CommandType.Text, paras);

            m_group.Gid       = groupid;
            m_group.Pro_intro = dt.Rows[0]["project_introduction"].ToString();;
            m_group.Pro_name  = dt.Rows[0]["project_name"].ToString();
            string[] ids   = new string[4];
            string[] names = new string[4];
            for (int i = 0; i < dt.Rows.Count; i++)
            {
                ids[i]   = dt.Rows[i]["id"].ToString();
                names[i] = dt.Rows[i]["name"].ToString();
            }

            m_group.Hid       = ids[0];
            m_group.Hid_name  = names[0];
            m_group.Mid1      = ids[1];
            m_group.Mid1_name = names[1];
            m_group.Mid2      = ids[2];
            m_group.Mid2_name = names[2];
            m_group.Mid3      = ids[3];
            m_group.Mid3_name = names[3];
        }
Exemplo n.º 2
0
        private void button7_Click(object sender, EventArgs e)
        {
            BLL.Group   b_group = new BLL.Group();
            Model.Group m_group = new Model.Group();
            string      msg     = "";
            int         groupid = 0;

            if (label1.Text.ToString().Equals(""))
            {
                groupid = 0;
            }
            else
            {
                groupid = int.Parse(label1.Text.ToString());
            }
            m_group.Gid       = groupid;
            m_group.Hid       = captainidbox.Text;
            m_group.Hid_name  = captainnamebox.Text;
            m_group.Mid1      = memberoneid.Text;
            m_group.Mid1_name = memberonename.Text;
            m_group.Mid2      = membertwoid.Text;
            m_group.Mid2_name = membertwoname.Text;
            m_group.Mid3      = memberthreeid.Text;
            m_group.Mid3_name = memberthreename.Text;
            m_group.Pro_name  = topicname.Text;
            m_group.Pro_intro = topicintroduce.Text;
            b_group.InsertOrModefiy(uid, groupid, m_group, out msg);
            MessageBox.Show(msg);
        }
        public GroupMessageReceiveEventArgs(JObject json)
        {
            user = new Model.QQ()
            {
                qq   = json.Value <long>("FromUserId"),
                name = json.Value <string>("FromNickName"),
            };
            throughgroup = new Model.Group()
            {
                id   = json.Value <long>("FromGroupId"),
                name = json.Value <string>("FromGroupName")
            };
            switch (json.Value <string>("MsgType"))
            {
            case "PicMsg":
                message = new PicMessage(json);
                break;

            case "VoiceMsg":
                message = new VoiceMessage(json);
                break;

            case "TextMsg":
            default:
                message = new Message(json);
                break;
            }
        }
Exemplo n.º 4
0
        private void 处理学生申请_Load(object sender, EventArgs e)
        {
            string grade = Grade.Text;
            string major = Major.Text;

            BLL.Group   b_group = new BLL.Group();
            Model.Group m_group = new Model.Group();
            dataGridView2.DataSource = b_group.getGroups(grade, major, uid);
            int width = 0;

            for (int i = 0; i < this.dataGridView2.Columns.Count; i++)
            {
                //将每一列都调整为自动适应模式
                this.dataGridView2.AutoResizeColumn(i, DataGridViewAutoSizeColumnMode.AllCellsExceptHeader);
                //记录整个DataGridView的宽度
                width += this.dataGridView2.Columns[i].Width;
            }
            //判断调整后的宽度与原来设定的宽度的关系,如果是调整后的宽度大于原来设定的宽度,
            //则将DataGridView的列自动调整模式设置为显示的列即可,
            //如果是小于原来设定的宽度,将模式改为填充。
            if (width > this.dataGridView2.Size.Width)
            {
                this.dataGridView2.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.DisplayedCells;
            }
            else
            {
                this.dataGridView2.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.Fill;
            }
            //冻结某列 从左开始 0,1,2
            dataGridView2.Columns[1].Frozen = true;
            dataGridView2.RowsDefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter;
        }
Exemplo n.º 5
0
        public PrivateMessageReceiveEventArgs(JObject json)
        {
            user = new Model.QQ()
            {
                qq = json.Value <long>("FromUin"),
            };
            if (json["TempUin"] != null)
            {
                throughgroup = new Model.Group()
                {
                    id = json.Value <long>("TempUin")
                };
            }

            switch (json.Value <string>("MsgType"))
            {
            case "PicMsg":
                message = new PicMessage(json);
                break;

            case "VoiceMsg":
                message = new VoiceMessage(json);
                break;

            case "TempSessionMsg":

                break;

            case "TextMsg":
            default:
                message = new Message(json);
                break;
            }
        }
Exemplo n.º 6
0
        private void 学生_个人组队管理_Load(object sender, EventArgs e)
        {
            BLL.Group   b_group = new BLL.Group();
            Model.Group m_group = new Model.Group();
            string      str     = this.uid;

            //label5.Text = str;
            if (!str.Equals(""))
            {
                if (b_group.IsExistence(str, m_group))
                {
                    label1.Text          = m_group.Gid.ToString();
                    captainidbox.Text    = m_group.Hid;
                    captainnamebox.Text  = m_group.Hid_name;
                    memberoneid.Text     = m_group.Mid1;
                    memberonename.Text   = m_group.Mid1_name;
                    membertwoid.Text     = m_group.Mid2;
                    membertwoname.Text   = m_group.Mid2_name;
                    memberthreeid.Text   = m_group.Mid3;
                    memberthreename.Text = m_group.Mid3_name;
                    topicname.Text       = m_group.Pro_name;
                    topicintroduce.Text  = m_group.Pro_intro;
                }
            }
        }
Exemplo n.º 7
0
        public async Task <Model.GroupCreateOrUpdateResult> CreateOrUpdateGroupAsync(Model.Group group, string trackingId)
        {
            try
            {
                var targets = group.Emails?.Count ?? 0;

                // Try to get existing group to get properties
                var existing = await store.GetGroupAsync(group.EngagementAccount, group.Name);

                if (existing != null)
                {
                    group.Properties = existing.Properties;
                }

                // Get Credential Contract
                var credential = await this.credentialManager.GetConnectorCredentialContractAsync(group.EngagementAccount);

                // Get EmailAccount
                var emailAccount = await this.store.GetEmailAccountAsync(group.EngagementAccount);

                // Request to Connector
                var connector   = GetEmailEngineAgent(credential, group.EngagementAccount);
                var groupResult = await connector.CreateorUpdateGroupAsync(credential, emailAccount, group.ToContract(), CancellationToken.None);

                // Update store
                if (groupResult?.Group != null)
                {
                    group.Properties = groupResult.Group.Properties;
                    group            = await this.store.CreateOrUpdateGroupAsync(group);
                }

                // Build result
                var state = groupResult != null && (groupResult.ErrorList == null || groupResult.ErrorList.Count() <= 0) ? GroupResultState.Updated :
                            groupResult != null && groupResult.ErrorList != null && groupResult.ErrorList.Count() != targets ? GroupResultState.PartiallyUpdated :
                            GroupResultState.NoUpdate;

                var invalid = groupResult?.ErrorList?.Select(e => new Model.GroupCreateOrUpdateResult.GroupCreateOrUpdateResultEntry
                {
                    Email        = e.Email,
                    ErrorMessage = e.ErrorMessage
                }).ToList();

                var result = new Model.GroupCreateOrUpdateResult()
                {
                    Value       = group.Name,
                    Description = group.Description,
                    State       = state,
                    Invalid     = invalid
                };

                EmailProviderEventSource.Current.Info(trackingId, this, nameof(this.CreateOrUpdateGroupAsync), OperationStates.Succeeded, $"account: {group.EngagementAccount}, group:{group.Name}");
                return(result);
            }
            catch (Exception ex)
            {
                EmailProviderEventSource.Current.ErrorException(trackingId, this, nameof(this.CreateOrUpdateGroupAsync), OperationStates.Failed, $"Failed to create email group for account: {group.EngagementAccount}", ex);
                throw new ApplicationException(string.Format($"Failed to create or update email group for account {group.EngagementAccount}"));
            }
        }
Exemplo n.º 8
0
Arquivo: Group.cs Projeto: lsyuan/ecms
 /// <summary>
 /// 新增角色
 /// </summary>
 /// <param name="gorup"></param>
 public bool AddGroup(Model.Group group)
 {
     using (DBHelper db = DBHelper.Create())
     {
         db.Insert <Group>(group);
         return(true);
     }
 }
Exemplo n.º 9
0
 public bool IsExistence(string uid, Model.Group group)
 {
     if (dao.IsExistence(uid, group))
     {
         return(true);
     }
     return(false);
 }
Exemplo n.º 10
0
 public List <Group> Group_Get()
 {
     if (ISLoadGroup)
     {
         AccessManagementService.Model.Group g = new Model.Group();
         return(g.ListOfGroup());
     }
     return(null);
 }
Exemplo n.º 11
0
 public GroupMemberIncreaseEventArgs(JObject json)
 {
     throughgroup = new Model.Group()
     {
         id = json["EventMsg"].Value <long>("FromUin")
     };
     user = new Model.QQ()
     {
         qq = json["EventData"].Value <long>("UserID"), name = json["EventData"].Value <string>("UserName")
     };
 }
Exemplo n.º 12
0
 public void Modefiy(int gid, Model.Group group, out string msg)
 {
     try {
         dao.Excute(group);
         msg = "提交成功";
     }
     catch (SqlException ex) {
         throw (ex);
     }catch (Exception ex) {
         throw(ex);
     }
     return;
 }
Exemplo n.º 13
0
 public static Group ConvertModelToDto(Model.Group group)
 {
     return(new Group {
         Groupname = group.Groupname,
         GroupId = group.GroupId,
         Class = group.Class,
         StartNumber = group.StartNumber,
         Participant1Id = group.Participant1?.ParticipantId ?? 0,
         Participant1FullName = group.Participant1?.Fullname() ?? string.Empty,
         Participant2Id = group.Participant2?.ParticipantId ?? 0,
         Participant2FullName = group.Participant2?.Fullname() ?? string.Empty,
     });
 }
        public JsonResult AddOrEditGroup(GroupEditViewModel model)
        {
            SyncContext.Lock();
            try
            {
                using (var masterPassword = SessionContext.GetMasterPassword())
                {
                    if (ModelState.IsValid)
                    {
                        var currentVaultName = SessionContext.GetCurrentVaultName();
                        var vaultRepository  = VaultRepositoryFactory.CreateInstance();
                        var vault            = vaultRepository.GetVault(currentVaultName, masterPassword);
                        var vaultManipulator = this.VaultManipulatorFactory.CreateInstance(vault);

                        var group = vaultManipulator.GetGroupById(Guid.Parse(model.Id));

                        bool isNew = false;
                        if (group == null)
                        {
                            group    = new Model.Group();
                            group.Id = Guid.Parse(model.Id);
                            isNew    = true;
                        }

                        group.Name = model.Name;

                        if (isNew)
                        {
                            Guid?parentId = model.ParentId == "#" ? null : (Guid?)Guid.Parse(model.ParentId);
                            vaultManipulator.AddGroup(parentId, group);
                        }
                        else
                        {
                            vaultManipulator.UpdateGroup(group);
                        }

                        vaultRepository.SaveVault(vault, masterPassword);
                        return(Json(new { success = true }));
                    }
                    else
                    {
                        return(Json(new { success = false }));
                    }
                }
            }
            finally
            {
                SyncContext.Release();
            }
        }
Exemplo n.º 15
0
        public void Insert(Model.Group m_group)
        {
            string sql = "insert into [group](headman,mid1,mid2,mid3,project_name,project_introduction) values(@hid,@mid1,@mid2,@mid3,@project_name,@project_introduction)";

            SqlParameter[] paras = new SqlParameter[]
            {
                new SqlParameter("@hid", m_group.Hid),
                new SqlParameter("@mid1", m_group.Hid),
                new SqlParameter("@mid2", m_group.Mid1),
                new SqlParameter("@mid3", m_group.Mid3),
                new SqlParameter("@project_name", m_group.Pro_name),
                new SqlParameter("@project_introduction", m_group.Pro_intro)
            };
            SqlDbHelper.ExecuteNonQuery(sql.ToString(), CommandType.Text, paras);
        }
Exemplo n.º 16
0
 public GroupEnterRequestEventArgs(JObject json)
 {
     throughgroup = new Model.Group()
     {
         id   = json["EventData"].Value <long>("GroupId"),
         name = json["EventData"].Value <string>("GroupName")
     };
     user = new Model.QQ()
     {
         qq   = json["EventData"].Value <long>("Who"),
         name = json["EventData"].Value <string>("WhoName")
     };
     this.json = (JObject)json["EventData"];
     answer    = json["EventData"].Value <string>("Content");
 }
Exemplo n.º 17
0
 private void groupsAdapter_ItemClick(Model.Group group)
 {
     if (!allgroups)
     {
         var intent = new Intent(Context, typeof(GroupContentActivity));
         intent.PutExtra("group_id", group.Id);
         intent.PutExtra("group_name", group.Name);
         intent.PutExtra("group_type", (int)group.Type);
         StartActivity(intent);
     }
     else
     {
         SendPostPermission(group.Id);
     }
 }
Exemplo n.º 18
0
        public void Excute(Model.Group m_group)
        {
            string sql = "update [groupp] set headman = @hid,mid1 = @mid1, mid2 = @mid2,mid3 = @mid3, project_name = @project_name, project_introduction= @project_introduction where groupid = @gid";

            SqlParameter[] paras = new SqlParameter[]
            {
                new SqlParameter("@hid", m_group.Hid),
                new SqlParameter("@mid1", m_group.Mid1),
                new SqlParameter("@mid2", m_group.Mid2),
                new SqlParameter("@mid3", m_group.Mid3),
                new SqlParameter("@project_name", m_group.Pro_name),
                new SqlParameter("@project_introduction", m_group.Pro_intro),
                new SqlParameter("@gid", m_group.Gid)
            };
            SqlDbHelper.ExecuteNonQuery(sql.ToString(), CommandType.Text, paras);
        }
Exemplo n.º 19
0
        public GroupMessageRevokeEventArgs(JObject json)
        {
            JObject j = (JObject)json["EventData"];

            user = new Model.QQ()
            {
                qq = j.Value <long>("UserID")
            };
            throughgroup = new Model.Group()
            {
                id = j.Value <long>("GroupID")
            };
            op   = j.Value <long>("AdminUserID");
            rand = j.Value <long>("MsgRandom");
            seq  = j.Value <int>("MsgSeq");
        }
        public FriendAddRequestEventArgs(JObject json)
        {
            JObject evdata = (JObject)json["EventData"];

            user = new Model.QQ()
            {
                qq   = evdata.Value <long>("UserID"),
                name = evdata.Value <string>("UserNick"),
            };
            throughgroup = new Model.Group()
            {
                id   = evdata.Value <long>("FromGroupId"),
                name = evdata.Value <string>("FromGroupName")
            };
            message = evdata.Value <string>("Content");
            source  = evdata.Value <string>("FromContent");
        }
Exemplo n.º 21
0
 public void InsertOrModefiy(string uid, int gid, Model.Group group, out string msg)
 {
     if (!dao.isCanDoit(uid))
     {
         msg = "你没有权限";
         return;
     }
     if (gid == 0)
     {
         dao.Insert(group);
         msg = "插入成功";
         return;
     }
     dao.Excute(group);
     msg = "更改成功";
     return;
 }
Exemplo n.º 22
0
        private void button7_Click(object sender, EventArgs e)
        {
            string id = uid;

            BLL.Group   b_group = new BLL.Group();
            Model.Group m_group = new Model.Group();
            string      msg     = "";

            if (dataGridView2.Rows.Count > 0)
            {
                for (int i = 0; i < dataGridView2.Rows.Count; i++)
                {
                    string _selectValue = dataGridView2.Rows[i].Cells["dataGridViewTextBoxColumn5"].EditedFormattedValue.ToString();
                    if (_selectValue == "True")
                    {
                        /*
                         * m_group.Gid = int.Parse(dataGridView2.Rows[i].Cells["小组编号"].ToString());
                         * m_group.Pro_name = dataGridView2.Rows[i].Cells["项目名称"].ToString();
                         * m_group.Hid_name = dataGridView2.Rows[i].Cells["队长"].ToString();
                         * m_group.Mid1_name = dataGridView2.Rows[i].Cells["队员"].ToString();
                         * m_group.Mid2_name = dataGridView2.Rows[i].Cells["队员1"].ToString();
                         * m_group.Mid3_name = dataGridView2.Rows[i].Cells["队员2"].ToString();
                         * m_group.First = dataGridView2.Rows[i].Cells["第一志愿"].ToString();
                         * m_group.First = dataGridView2.Rows[i].Cells["第二志愿"].ToString();
                         * m_group.First = dataGridView2.Rows[i].Cells["第三志愿"].ToString();
                         * b_group.UpdateTea(m_group.Gid,m_group,out msg);
                         * */
                        string str = dataGridView2.Rows[i].Cells["小组编号"].EditedFormattedValue.ToString();
                        int    gid = int.Parse(str);
                        try
                        {
                            b_group.UpdateTea(gid, id, out msg);
                            MessageBox.Show(msg);
                        }
                        catch (SqlException ex)
                        {
                            MessageBox.Show("更改失败" + ex.ErrorCode);
                        }
                        catch (Exception ex) {
                            MessageBox.Show("更改失败" + ex.Message);
                        }
                    }
                }
            }
        }
Exemplo n.º 23
0
        public bool IsExistence(string uid, Model.Group m_group)
        {
            string sql = "select groupid from [groupp] where headman = @uid1 or mid1 = @uid2 or mid2 = @uid3 or mid3 = @uid4";

            SqlParameter[] paras = new SqlParameter[]
            {
                new SqlParameter("@uid1", uid),
                new SqlParameter("@uid2", uid),
                new SqlParameter("@uid3", uid),
                new SqlParameter("@uid4", uid)
            };
            try {
                int gid = (int)SqlDbHelper.ExecuteScalar(sql.ToString(), CommandType.Text, paras);
                get_Entity(gid, m_group);
            }
            catch
            {
                return(false);
            }
            return(true);
        }
Exemplo n.º 24
0
        public void Excute(Model.Group m_group)
        {
            string sql = "update [group] set headman = s1.id,mid1 = s2.id, mid2 = s3.id,mid3 = s4.id, project_name = @project_name, first=@first,second=@second,@third"
                         + "where groupid = @gid and (s1.name = @HidName or s2.name = @name2 or s3.name = @name3 or s4.name = @name4) FROM [groupp]" +
                         " LEFT JOIN [student] s1 ON s1.id = [groupp].headman LEFT JOIN [student] s2 ON s2.id = [groupp].mid1 LEFT JOIN [student] s3 ON s3.id = [groupp].mid2 "
                         + "LEFT JOIN [student] s4 ON s4.id = [groupp].mid3;";;

            SqlParameter[] paras = new SqlParameter[]
            {
                new SqlParameter("@HidName", m_group.Hid_name),
                new SqlParameter("@name2", m_group.Mid1_name),
                new SqlParameter("@name3", m_group.Mid2_name),
                new SqlParameter("@name4", m_group.Mid3_name),
                new SqlParameter("@project_name", m_group.Pro_name),
                new SqlParameter("@first", m_group.First),
                new SqlParameter("@second", m_group.Second),
                new SqlParameter("@third", m_group.Thrid),
                new SqlParameter("@gid", m_group.Gid)
            };
            SqlDbHelper.ExecuteNonQuery(sql.ToString(), CommandType.Text, paras);
        }
Exemplo n.º 25
0
        /// <summary>
        ///     Gets the set of Groups that are included in a Group Branch, either as the parent or a descendant.
        /// </summary>
        /// <param name="groupService"></param>
        /// <param name="parentGroup"></param>
        /// <param name="includedBranchItems"></param>
        /// <returns></returns>
        private HashSet <int> GetGroupBranchKeys(GroupService groupService, Model.Group parentGroup, IncludedGroupsSpecifier includedBranchItems)
        {
            var groupKeys = new HashSet <int>();

            if (parentGroup == null)
            {
                return(groupKeys);
            }

            // Include the Parent Group?
            if (includedBranchItems == IncludedGroupsSpecifier.EntireBranch)
            {
                groupKeys.Add(parentGroup.Id);
            }

            // Include descendants of the Parent Group.
            foreach (int childGroupId in groupService.GetAllDescendentGroupIds(parentGroup.Id, false))
            {
                groupKeys.Add(childGroupId);
            }

            return(groupKeys);
        }
Exemplo n.º 26
0
        private void SetupPartitions()
        {
            if (s_quran_metadata == null)
            {
                LoadQuranMetadata();
            }

            if (s_quran_metadata != null)
            {
                // setup Chapters
                for (int i = 0; i < s_quran_metadata.Chapters.Length; i++)
                {
                    int number = s_quran_metadata.Chapters[i].Number;
                    int verse_count = s_quran_metadata.Chapters[i].Verses;
                    int first_verse = s_quran_metadata.Chapters[i].FirstVerse;
                    int last_verse = first_verse + verse_count;
                    string name = s_quran_metadata.Chapters[i].Name;
                    string transliterated_name = s_quran_metadata.Chapters[i].TransliteratedName;
                    string english_name = s_quran_metadata.Chapters[i].EnglishName;
                    int revelation_order = s_quran_metadata.Chapters[i].RevelationOrder;
                    RevelationPlace revelation_place = s_quran_metadata.Chapters[i].RevelationPlace;
                    int bowing_count = s_quran_metadata.Chapters[i].Bowings;

                    List<Verse> verses = new List<Verse>();
                    if (this.verses != null)
                    {
                        for (int j = first_verse; j < last_verse; j++)
                        {
                            int index = j - 1;
                            if ((index >= 0) && (index < this.verses.Count))
                            {
                                Verse verse = this.verses[index];
                                verses.Add(verse);
                            }
                            else
                            {
                                break;
                            }
                        }

                        Chapter chapter = new Chapter(number, name, transliterated_name, english_name, revelation_order, revelation_place, bowing_count, verses);
                        this.chapters.Add(chapter);
                    }
                }

                // setup Bowings
                for (int i = 0; i < s_quran_metadata.Bowings.Length; i++)
                {
                    int number = s_quran_metadata.Bowings[i].Number;
                    int start_chapter = s_quran_metadata.Bowings[i].StartChapter;
                    int start_chapter_verse = s_quran_metadata.Bowings[i].StartChapterVerse;

                    int first_verse = 0;
                    for (int j = 0; j < start_chapter - 1; j++)
                    {
                        first_verse += this.chapters[j].Verses.Count;
                    }
                    first_verse += start_chapter_verse;

                    int next_bowing_first_verse = 0;
                    if (i < s_quran_metadata.Bowings.Length - 1)
                    {
                        int next_bowing_start_chapter = s_quran_metadata.Bowings[i + 1].StartChapter;
                        int next_bowing_start_chapter_verse = s_quran_metadata.Bowings[i + 1].StartChapterVerse;
                        for (int j = 0; j < next_bowing_start_chapter - 1; j++)
                        {
                            next_bowing_first_verse += this.chapters[j].Verses.Count;
                        }
                        next_bowing_first_verse += next_bowing_start_chapter_verse;
                    }
                    else
                    {
                        next_bowing_first_verse = Verse.MAX_NUMBER + 1;
                    }

                    int last_verse = next_bowing_first_verse;

                    List<Verse> verses = new List<Verse>();
                    for (int j = first_verse; j < last_verse; j++)
                    {
                        int index = j - 1;
                        if ((index >= 0) && (index < this.verses.Count))
                        {
                            Verse verse = this.verses[index];
                            verses.Add(verse);
                        }
                        else
                        {
                            break;
                        }
                    }

                    Bowing bowing = new Bowing(number, verses);
                    this.bowings.Add(bowing);
                }

                // setup Group
                for (int i = 0; i < s_quran_metadata.Groups.Length; i++)
                {
                    int number = s_quran_metadata.Groups[i].Number;
                    int start_chapter = s_quran_metadata.Groups[i].StartChapter;
                    int start_chapter_verse = s_quran_metadata.Groups[i].StartChapterVerse;

                    int first_verse = 0;
                    for (int j = 0; j < start_chapter - 1; j++)
                    {
                        first_verse += this.chapters[j].Verses.Count;
                    }
                    first_verse += start_chapter_verse;

                    int next_group_first_verse = 0;
                    if (i < s_quran_metadata.Groups.Length - 1)
                    {
                        int next_group_start_chapter = s_quran_metadata.Groups[i + 1].StartChapter;
                        int next_group_start_chapter_verse = s_quran_metadata.Groups[i + 1].StartChapterVerse;
                        for (int j = 0; j < next_group_start_chapter - 1; j++)
                        {
                            next_group_first_verse += this.chapters[j].Verses.Count;
                        }
                        next_group_first_verse += next_group_start_chapter_verse;
                    }
                    else
                    {
                        next_group_first_verse = Verse.MAX_NUMBER + 1;
                    }

                    int last_verse = next_group_first_verse;

                    List<Verse> verses = new List<Verse>();
                    for (int j = first_verse; j < last_verse; j++)
                    {
                        int index = j - 1;
                        if ((index >= 0) && (index < this.verses.Count))
                        {
                            Verse verse = this.verses[index];
                            verses.Add(verse);
                        }
                        else
                        {
                            break;
                        }
                    }

                    Model.Group group = new Model.Group(number, verses);
                    this.groups.Add(group);
                }

                // setup Quarters
                for (int i = 0; i < s_quran_metadata.Quarters.Length; i++)
                {
                    int number = s_quran_metadata.Quarters[i].Number;
                    int start_chapter = s_quran_metadata.Quarters[i].StartChapter;
                    int start_chapter_verse = s_quran_metadata.Quarters[i].StartChapterVerse;

                    int first_verse = 0;
                    for (int j = 0; j < start_chapter - 1; j++)
                    {
                        first_verse += this.chapters[j].Verses.Count;
                    }
                    first_verse += start_chapter_verse;

                    int next_group_quarter_first_verse = 0;
                    if (i < s_quran_metadata.Quarters.Length - 1)
                    {
                        int next_group_quarter_start_chapter = s_quran_metadata.Quarters[i + 1].StartChapter;
                        int next_group_quarter_start_chapter_verse = s_quran_metadata.Quarters[i + 1].StartChapterVerse;
                        for (int j = 0; j < next_group_quarter_start_chapter - 1; j++)
                        {
                            next_group_quarter_first_verse += this.chapters[j].Verses.Count;
                        }
                        next_group_quarter_first_verse += next_group_quarter_start_chapter_verse;
                    }
                    else
                    {
                        next_group_quarter_first_verse = Verse.MAX_NUMBER + 1;
                    }

                    int last_verse = next_group_quarter_first_verse;

                    List<Verse> verses = new List<Verse>();
                    for (int j = first_verse; j < last_verse; j++)
                    {
                        int index = j - 1;
                        if ((index >= 0) && (index < this.verses.Count))
                        {
                            Verse verse = this.verses[index];
                            verses.Add(verse);
                        }
                        else
                        {
                            break;
                        }
                    }

                    Quarter group_quarter = new Quarter(number, verses);
                    this.quarters.Add(group_quarter);
                }

                // setup Pages
                for (int i = 0; i < s_quran_metadata.Pages.Length; i++)
                {
                    int number = s_quran_metadata.Pages[i].Number;
                    int start_chapter = s_quran_metadata.Pages[i].StartChapter;
                    int start_chapter_verse = s_quran_metadata.Pages[i].StartChapterVerse;

                    int first_verse = 0;
                    for (int j = 0; j < start_chapter - 1; j++)
                    {
                        first_verse += this.chapters[j].Verses.Count;
                    }
                    first_verse += start_chapter_verse;

                    int next_page_first_verse = 0;
                    if (i < s_quran_metadata.Pages.Length - 1)
                    {
                        int next_page_start_chapter = s_quran_metadata.Pages[i + 1].StartChapter;
                        int next_page_start_chapter_verse = s_quran_metadata.Pages[i + 1].StartChapterVerse;
                        for (int j = 0; j < next_page_start_chapter - 1; j++)
                        {
                            next_page_first_verse += this.chapters[j].Verses.Count;
                        }
                        next_page_first_verse += next_page_start_chapter_verse;
                    }
                    else
                    {
                        next_page_first_verse = Verse.MAX_NUMBER + 1;
                    }

                    int last_verse = next_page_first_verse;

                    List<Verse> verses = new List<Verse>();
                    for (int j = first_verse; j < last_verse; j++)
                    {
                        int index = j - 1;
                        if ((index >= 0) && (index < this.verses.Count))
                        {
                            Verse verse = this.verses[index];
                            verses.Add(verse);
                        }
                        else
                        {
                            break;
                        }
                    }

                    Page page = new Page(number, verses);
                    this.pages.Add(page);
                }

                // setup Parts
                for (int i = 0; i < s_quran_metadata.Parts.Length; i++)
                {
                    int number = s_quran_metadata.Parts[i].Number;
                    int start_chapter = s_quran_metadata.Parts[i].StartChapter;
                    int start_chapter_verse = s_quran_metadata.Parts[i].StartChapterVerse;

                    int first_verse = 0;
                    for (int j = 0; j < start_chapter - 1; j++)
                    {
                        first_verse += this.chapters[j].Verses.Count;
                    }
                    first_verse += start_chapter_verse;

                    int next_part_first_verse = 0;
                    if (i < s_quran_metadata.Parts.Length - 1)
                    {
                        int next_part_start_chapter = s_quran_metadata.Parts[i + 1].StartChapter;
                        int next_part_start_chapter_verse = s_quran_metadata.Parts[i + 1].StartChapterVerse;
                        for (int j = 0; j < next_part_start_chapter - 1; j++)
                        {
                            next_part_first_verse += this.chapters[j].Verses.Count;
                        }
                        next_part_first_verse += next_part_start_chapter_verse;
                    }
                    else
                    {
                        next_part_first_verse = Verse.MAX_NUMBER + 1;
                    }

                    int last_verse = next_part_first_verse;

                    List<Verse> verses = new List<Verse>();
                    for (int j = first_verse; j < last_verse; j++)
                    {
                        int index = j - 1;
                        if ((index >= 0) && (index < this.verses.Count))
                        {
                            Verse verse = this.verses[index];
                            verses.Add(verse);
                        }
                        else
                        {
                            break;
                        }
                    }

                    Part part = new Part(number, verses);
                    this.parts.Add(part);
                }

                // setup Stations
                for (int i = 0; i < s_quran_metadata.Stations.Length; i++)
                {
                    int number = s_quran_metadata.Stations[i].Number;
                    int start_chapter = s_quran_metadata.Stations[i].StartChapter;
                    int start_chapter_verse = s_quran_metadata.Stations[i].StartChapterVerse;

                    int first_verse = 0;
                    for (int j = 0; j < start_chapter - 1; j++)
                    {
                        first_verse += this.chapters[j].Verses.Count;
                    }
                    first_verse += start_chapter_verse;

                    int next_station_first_verse = 0;
                    if (i < s_quran_metadata.Stations.Length - 1)
                    {
                        int next_station_start_chapter = s_quran_metadata.Stations[i + 1].StartChapter;
                        int next_station_start_chapter_verse = s_quran_metadata.Stations[i + 1].StartChapterVerse;
                        for (int j = 0; j < next_station_start_chapter - 1; j++)
                        {
                            next_station_first_verse += this.chapters[j].Verses.Count;
                        }
                        next_station_first_verse += next_station_start_chapter_verse;
                    }
                    else
                    {
                        next_station_first_verse = Verse.MAX_NUMBER + 1;
                    }

                    int last_verse = next_station_first_verse;

                    List<Verse> verses = new List<Verse>();
                    for (int j = first_verse; j < last_verse; j++)
                    {
                        int index = j - 1;
                        if ((index >= 0) && (index < this.verses.Count))
                        {
                            Verse verse = this.verses[index];
                            verses.Add(verse);
                        }
                        else
                        {
                            break;
                        }
                    }

                    Station station = new Station(number, verses);
                    this.stations.Add(station);
                }

                // setup Prostration
                for (int i = 0; i < s_quran_metadata.Prostrations.Length; i++)
                {
                    int number = s_quran_metadata.Prostrations[i].Number;
                    int chapter = s_quran_metadata.Prostrations[i].Chapter;
                    int chapter_verse = s_quran_metadata.Prostrations[i].ChapterVerse;
                    ProstrationType type = s_quran_metadata.Prostrations[i].Type;

                    int first_verse = 0;
                    for (int j = 0; j < chapter - 1; j++)
                    {
                        first_verse += this.chapters[j].Verses.Count;
                    }
                    first_verse += chapter_verse;

                    if (this.verses.Count > first_verse - 1)
                    {
                        Verse verse = this.verses[first_verse - 1];
                        Prostration prostration = new Prostration(number, type, verse);
                        this.prostrations.Add(prostration);
                    }
                    else
                    {
                        break;
                    }
                }

                // update verse/word/letter numbers AND
                // update distances to previous same verse/word/letter
                UpdateNumbersAndDistances(SelectionScope.Book);
            }
        }
Exemplo n.º 27
0
 public bool Registration(string password1, string password2)
 {
     Reg_Password = password1;
     Db_Password  = password2;
     if (!String.IsNullOrEmpty(Name) && !String.IsNullOrEmpty(Reg_Login) && !String.IsNullOrEmpty(Reg_Password) && !String.IsNullOrEmpty(Db_Password))
     {
         if (Group >= 1 && Group <= 10)
         {
             if (Course >= 1 && Course <= 5)
             {
                 if (Subgroup == 1 || Subgroup == 2)
                 {
                     if (NumStudCard.ToString().Length == 8)
                     {
                         if (password1.Equals(password2))
                         {
                             User    tmp1 = eFUser.GetUserByLogin(Reg_Login);
                             Student tmp2 = eFStudent.GetStudentById(NumStudCard);
                             if (tmp2 == null)
                             {
                                 if (tmp1 == null)
                                 {
                                     Model.Group tmp = eFGroup.GetGroup(Group, Course, Subgroup);
                                     if (tmp == null)
                                     {
                                         eFGroup.addGroup(new Model.Group(Group, Course, Subgroup));
                                     }
                                     eFStudent.addStudent(new Student(NumStudCard, eFGroup.GetGroup(Group, Course, Subgroup).idGroup, Name));
                                     eFUser.addUser(new User(NumStudCard, Reg_Login, User.getHash(Reg_Password)));
                                     eFUser.Save();
                                     return(true);
                                 }
                                 else
                                 {
                                     MyMessageBox.Show("User with this login already exists!", MessageBoxButton.OK);
                                     return(false);
                                 }
                             }
                             else
                             {
                                 MyMessageBox.Show("A user with that student card number is already there!", MessageBoxButton.OK);
                                 return(false);
                             }
                         }
                         else
                         {
                             MyMessageBox.Show("Passwords must match!", MessageBoxButton.OK);
                             return(false);
                         }
                     }
                     else
                     {
                         MyMessageBox.Show("Student card number must contain 8 digits!", MessageBoxButton.OK);
                         return(false);
                     }
                 }
                 else
                 {
                     MyMessageBox.Show("Subgroup must be 1 or 2!", MessageBoxButton.OK);
                     return(false);
                 }
             }
             else
             {
                 MyMessageBox.Show("Course must be 1-5!", MessageBoxButton.OK);
                 return(false);
             }
         }
         else
         {
             MyMessageBox.Show("Group must be 1-10!", MessageBoxButton.OK);
             return(false);
         }
     }
     else
     {
         MyMessageBox.Show("Check entered data!", MessageBoxButton.OK);
         return(false);
     }
 }
Exemplo n.º 28
0
        public async Task<ActionResult> PostRegister()
        {
            var model = TempData["RegisterViewModel"] as RegisterViewModel;

            var userEntity = await UnitOfWork.UserAccountRepository.FindByEmailAsync(model.AdminEmail);
            
            var guests = new List<ApplicationUser>();

            var splittedGuestEmails = model.GuestsEmails.Split(',');
            foreach (var singleEmail in splittedGuestEmails)
            {
                var guest = new ApplicationUser { Email = singleEmail, UserName = singleEmail };
                IdentityResult result = await UserManager.CreateAsync(guest);

                if (result.Succeeded)
                {
                    guest = await UnitOfWork.UserAccountRepository.FindByEmailAsync(singleEmail);
                    guest.ChangePasswordToken = new UserChangePasswordToken();

                    guests.Add(guest);
                }
            }
            var newGroup = new Model.Group(model.GroupName, guests);
            await UnitOfWork.GroupRepository.Insert(newGroup);

            SendInvites(guests);

            newGroup.ApplicationUsers.Add(userEntity);
            await UnitOfWork.GroupRepository.Update(newGroup);

            return RedirectToAction("ChangePassword", "Manage");
        }
Exemplo n.º 29
0
        public async Task LoadDataFromFile(string filePath)
        {
            //Clears all existing data
            this.Groups.Clear();
            this.Categories.Clear();
            this.Transactions.Clear();
            this.PaymentMethods.Clear();
            this.BudgetValues.Clear();
            this.BudgetTotals.Clear();
            this.SpendingValues.Clear();
            this.SpendingTotals.Clear();
            this.ComparisonValues.Clear();
            this.ComparisonTotals.Clear();

            Group        testGroup    = new Model.Group();
            Category     testCategory = new Category();
            MoneyGridRow testRow      = new MoneyGridRow(testGroup, testCategory);
            //this.Groups.Add(testGroup);
            //this.Categories.Add(testCategory);
            //this.BudgetValues.Add(testRow);
            //return;

            //Retrieves the data using the serialize attributes
            DataWrapper data = new DataWrapper();

            try
            {
                using (FileStream file = new FileStream(filePath, FileMode.Open))
                {
                    XmlSerializer dataSerializer = new XmlSerializer(typeof(DataWrapper));
                    data = (DataWrapper)dataSerializer.Deserialize(file);
                }
            }
            catch (IOException ex) //File does not exist; set everything to defaults
            {
                await CreateNewFile(Properties.Settings.Default.DefaultDirectory + "\\data_new.xml");
            }
            catch (InvalidOperationException ex)
            {
                await this._errorhandler.DisplayError($"Error reading XML from file {filePath}\n{ex.Message}");
            }
            catch (System.Xml.XmlException ex)
            {
                await this._errorhandler.DisplayError($"Error in XML file\n{ex.Message}");
            }
            //Process the data
            this.CurrentYear = data.Year;
            int index = 0;
            //Add groups, categories, and budget values
            List <Group>    tempGroups     = new List <Group>();
            List <Category> tempCategories = new List <Category>();

            this.BudgetValues.MemberChanged -= UpdateBudgetTotals;
            foreach (Group group in data.Groups)
            {
                Group newGroup = new Group(group.IsIncome, group.Name);
                this.Groups.Add(newGroup);
                foreach (Category category in group.Categories)
                {
                    newGroup.Categories.Add(category);
                    this.Categories.Add(category);
                    MoneyGridRow row = this.BudgetValues.Single(x => x.Category == category);
                    row.Values.Values = data.BudgetValues.ElementAt(index);
                    index++;
                }
            }
            this.BudgetValues.MemberChanged += UpdateBudgetTotals;
            RefreshBudgetTotals();
            //Add payment methods
            foreach (PaymentMethod payment in data.PaymentMethods)
            {
                this.PaymentMethods.Add(payment);
            }
            //Adds the transactions
            //Transactions are stored with different instances of the category and payment method objects. These need to
            //be matched to the data loaded above. Matching is done using the name of each.
            List <Transaction> tempTransactions = new List <Transaction>();

            foreach (Transaction transaction in data.Transactions)
            {
                string categoryName = transaction.Category.Name;
                string paymentName  = transaction.PaymentMethod.Name;
                try
                {
                    transaction.Category = this.Categories.Single(x => x.Name.Equals(categoryName));
                }
                catch (ArgumentException ex)
                {
                    throw new ArgumentException("Cannot find matching category " + transaction.Category.Name + " in categories list");
                }
                try
                {
                    transaction.PaymentMethod = this.PaymentMethods.Single(x => x.Name.Equals(paymentName));
                }
                catch (ArgumentException ex)
                {
                    throw new ArgumentException("Cannot find matching payment method " + transaction.PaymentMethod.Name + " in payment methods list");
                }
                tempTransactions.Add(transaction);
            }
            this.Transactions.InsertRange(tempTransactions);
        }