예제 #1
0
        public async Task <SMSClass> sendSMSUsingAPIAsync
            (DateTime smsDate, int notifyCategory, int notifyType, string phoneNo, string smsSubject, string smsBody, int counter)
        {
            DateTime myTimeNow = DateTime.Now;
            int      epoch     = (int)(DateTime.UtcNow - new DateTime(1970, 1, 1)).TotalMilliseconds;
            SMSClass smsObj    = new SMSClass
            {
                datID      = phoneNo + "-sms" + counter + "-" + epoch.ToString(),
                datType    = notifyCategory,
                datNotify  = notifyType,
                dtInsert   = myTimeNow.ToString("yyyy-MM-ddTHH:mm:ssZ"),
                dtSchedule = smsDate.AddMinutes(1).ToString("yyyy-MM-ddTHH:mm:ssZ"),
                dtExpired  = smsDate.AddYears(1).ToString("yyyy-MM-ddTHH:mm:ssZ"),
                smsTo      = phoneNo,
                subject    = smsSubject,
                body       = smsBody
            };
            var response = await WepApiMethod.SendApiAsync <SMSClass>
                               (HttpVerbs.Post, $"BulkSMS", smsObj, WepApiMethod.APIEngine.EmailSMSAPI);

            if (response.isSuccess)
            {
                return(response.Data);
            }
            else
            {
                return(null);
            }
        }
예제 #2
0
        public async Task <ActionResult> _Edit(EditBranchModel model)
        {
            var nameResponse = await WepApiMethod.SendApiAsync <bool>(HttpVerbs.Get, $"Administration/Branch/IsNameExist?id={model.Id}&name={model.Name}");

            if (nameResponse.isSuccess)
            {
                TempData["ErrorMessage"] = Language.Branch.ValidExistName;
                return(RedirectToAction("List"));
            }

            if (ModelState.IsValid)
            {
                var response = await WepApiMethod.SendApiAsync <bool>(HttpVerbs.Put, $"Administration/Branch?id={model.Id}", model);

                if (response.isSuccess)
                {
                    TempData["SuccessMessage"] = Language.Branch.AlertSuccessUpdate;

                    await LogActivity(Modules.Setting, "Update Parameter Branch", model);

                    return(RedirectToAction("List"));
                }
            }

            TempData["ErrorMessage"] = Language.Branch.AlertFailUpdate;

            return(RedirectToAction("List"));
        }
예제 #3
0
        public async Task <ActionResult> List(int?Id)
        {
            if (Id == null)
            {
                throw new HttpException(404, "Page Not Found");
            }

            var model = new ListKMCModel();

            var response = await WepApiMethod.SendApiAsync <CategoryModel>(HttpVerbs.Get, $"KMC/Category?id={Id}");

            if (response.isSuccess)
            {
                model.Category = response.Data;
            }

            ViewBag.Categories = new List <CategoryModel>();

            var responseCategory = await WepApiMethod.SendApiAsync <List <CategoryModel> >(HttpVerbs.Get, $"KMC/Category");

            if (responseCategory.isSuccess)
            {
                ViewBag.Categories = responseCategory.Data;
            }

            return(View(model));
        }
예제 #4
0
        public async Task <EmailClass> sendEmailUsingAPIAsync
            (DateTime emailDate, int notifyCategory, int notifyType, string emailAddress, string emailSubject, string emailBody, int counter)
        {
            DateTime   myTimeNow = DateTime.Now;
            int        epoch     = (int)(DateTime.UtcNow - new DateTime(1970, 1, 1)).TotalMilliseconds;
            EmailClass emailObj  = new EmailClass
            {
                datID      = emailAddress + "-email" + counter + "-" + epoch.ToString(),
                datType    = notifyCategory,
                datNotify  = notifyType,
                dtInsert   = myTimeNow.ToString("yyyy-MM-ddTHH:mm:ssZ"),
                dtSchedule = emailDate.AddMinutes(1).ToString("yyyy-MM-ddTHH:mm:ssZ"),
                dtExpired  = emailDate.AddYears(1).ToString("yyyy-MM-ddTHH:mm:ssZ"),
                emailTo    = emailAddress,
                subject    = HttpUtility.HtmlDecode(emailSubject),
                body       = HttpUtility.HtmlDecode(emailBody)
            };
            var response = await WepApiMethod.SendApiAsync <EmailClass>
                               (HttpVerbs.Post, $"BulkEmail", emailObj, WepApiMethod.APIEngine.EmailSMSAPI);

            if (response.isSuccess)
            {
                return(response.Data);
            }
            else
            {
                return(null);
            }
        }
        public async Task <ActionResult> Edit(EditEventExternalExhibitorModel model)
        {
            var nameResponse = await WepApiMethod.SendApiAsync <bool>(HttpVerbs.Get, $"eEvent/EventExternalExhibitor/IsNameExist?id={model.Id}&name={model.Name}");

            if (nameResponse.isSuccess)
            {
                TempData["ErrorMessage"] = " Name already exist in the system";
                return(RedirectToAction("List"));
            }

            if (ModelState.IsValid)
            {
                var response = await WepApiMethod.SendApiAsync <bool>(HttpVerbs.Put, $"eEvent/EventExternalExhibitor?id={model.Id}", model);

                if (response.isSuccess)
                {
                    TempData["SuccessMessage"] = "External Exhibitor successfully updated";

                    return(RedirectToAction("List"));
                }
            }

            TempData["ErrorMessage"] = "Fail to update EventExternalExhibitor";

            return(RedirectToAction("List"));
        }
예제 #6
0
        public async Task <ActionResult> Create(int?Id)
        {
            if (Id == null)
            {
                throw new HttpException(404, "Page Not Found");
            }

            var model = new Models.CreateKMCModel();

            var response = await WepApiMethod.SendApiAsync <CategoryModel>(HttpVerbs.Get, $"KMC/Category?id={Id}");

            if (response.isSuccess)
            {
                model.Category   = response.Data.Title;
                model.CategoryId = response.Data.Id;
            }

            model.filter_imgs   = filter_imgs;
            model.filter_videos = filter_videos;
            model.filter_audios = filter_audios;
            model.filter_docs   = filter_docs;

            model.IsPublic = true;

            model.Roles = new SelectList(await GetRoles(), "Id", "Name", 0);

            return(View(model));
        }
예제 #7
0
        public async Task <ActionResult> _Join(JoinCourseGroupModel model)
        {
            var nameResponse = await WepApiMethod.SendApiAsync <bool>(HttpVerbs.Get, $"eLearning/CourseGroup/IsCodeExist?code={model.EnrollmentCode}");

            if (nameResponse.isSuccess)
            {
                if (ModelState.IsValid)
                {
                    DateTime _now          = DateTime.Now;
                    var      currentUserId = CurrentUser.UserId.Value;
                    var      response      = await WepApiMethod.SendApiAsync <string>(HttpVerbs.Post, $"eLearning/CourseGroup/JoinGroup", model);

                    if (response.isSuccess)
                    {
                        TempData["SuccessMessage"] = Language.eLearning.CourseGroup.AlertSuccessJoin;
                        //LogActivity(Modules.Learning, "Create Discussion Topic", model);
                    }
                    else
                    {
                        TempData["ErrorMessage"] = Language.eLearning.CourseGroup.AlertFailJoin;
                    }
                }
            }
            else
            {
                TempData["ErrorMessage"] = "Group Code Not Valid";
                return(RedirectToAction("List"));
            }
            return(RedirectToAction("List"));
        }
예제 #8
0
        public async Task <ActionResult> Create(CreateRewardRedemptionModel model)
        {
            if (ModelState.IsValid)
            {
                model.CreatedBy   = CurrentUser.UserId;
                model.CreatedDate = DateTime.Now;

                var response = await WepApiMethod.SendApiAsync <CreateRewardRedemptionModel>
                                   (HttpVerbs.Post, $"Reward/RewardRedemption", model);

                if (response.isSuccess)
                {
                    await LogActivity(Modules.Setting, "Create Reward Redemption Settings");

                    TempData["SuccessMessage"] = "Reward Redemption Settings created successfully";
                    return(RedirectToAction("List"));
                }
                else
                {
                    ErrorMsgReceived msg = JsonConvert.DeserializeObject <ErrorMsgReceived>(response.ErrorMessage);
                    TempData["ErrorMessage"] = "Failed to create Reward Redemption Settings : " + msg.Message;
                    return(RedirectToAction("List"));
                }
            }
            else
            {
                TempData["ErrorMessage"] = "Failed to create Reward Redemption Settings";
                return(RedirectToAction("List"));
            }
        }
예제 #9
0
        public async Task <ActionResult> _Subscribe(int id, int GroupId)
        {
            var model       = new List <ListGroupMemberModel>();
            int CreatedById = CurrentUser.UserId.Value;
            var addtogroup  = await WepApiMethod.SendApiAsync <List <ListGroupMemberModel> >(HttpVerbs.Get, $"eLearning/CourseGroup/AddToGroup?id={id}&GroupId={GroupId}&uid={CreatedById}");

            if (addtogroup.isSuccess)
            {
                model = addtogroup.Data;

                //model.UpdatedBy = CurrentUser.UserId.Value;

                return(View("_UserList", model));
            }
            else
            {
                var getgroup = await WepApiMethod.SendApiAsync <List <ListGroupMemberModel> >(HttpVerbs.Get, $"eLearning/CourseGroup/GetAllLearner?id={GroupId}");

                if (getgroup.isSuccess)
                {
                    model = getgroup.Data;
                }

                TempData["ErrorMessage"] = Language.eLearning.CourseGroup.AlertFailAddUser;
                return(View("_UserList", model));
            }
        }
예제 #10
0
        public async Task <ActionResult> _RemoveCourseEvent(int id, int GroupId)
        {
            var model           = new List <ListCourseModel>();
            int CreatedById     = CurrentUser.UserId.Value;
            var removefromgroup = await WepApiMethod.SendApiAsync <List <ListCourseModel> >(HttpVerbs.Get, $"eLearning/CourseGroup/RemoveCourseEventFromGroup?id={id}&GroupId={GroupId}&uid={CreatedById}");

            if (removefromgroup.isSuccess)
            {
                model = removefromgroup.Data;

                //model.UpdatedBy = CurrentUser.UserId.Value;

                return(View("_CoursesList", model));
            }
            else
            {
                var getgroup = await WepApiMethod.SendApiAsync <List <ListCourseModel> >(HttpVerbs.Get, $"eLearning/CourseGroup/GetAllCourse?id={GroupId}");

                if (getgroup.isSuccess)
                {
                    model = getgroup.Data;
                }
                TempData["ErrorMessage"] = Language.eLearning.CourseGroup.AlertFailRemoveCourse;
                return(View("_CoursesList", model));
            }
        }
예제 #11
0
        public async Task <ActionResult> _Edit(EditCategoryModel model)
        {
            var nameResponse = await WepApiMethod.SendApiAsync <bool>(HttpVerbs.Get, $"KMC/Category/IsNameExist?id={model.Id}&title={model.Title}");

            if (nameResponse.isSuccess)
            {
                TempData["ErrorMessage"] = Language.KMCCategory.ValidExistName;
                return(RedirectToAction("List"));
            }

            if (ModelState.IsValid)
            {
                var response = await WepApiMethod.SendApiAsync <bool>(HttpVerbs.Put, $"KMC/Category?id={model.Id}", model);

                if (response.isSuccess)
                {
                    TempData["SuccessMessage"] = Language.KMCCategory.AlertSuccessUpdate;

                    await LogActivity(Modules.KMC, "Update KMC Category", model);

                    return(RedirectToAction("List"));
                }
            }

            TempData["ErrorMessage"] = Language.KMCCategory.AlertFailUpdate;

            return(RedirectToAction("List"));
        }
        // GET: Template/EmailTemplates/Delete/5
        public async Task <ActionResult> Delete(int?id)
        {
            if (id == null)
            {
                return(HttpNotFound());
            }

            var response = await WepApiMethod.SendApiAsync <DetailsNotificationTemplateModel>(HttpVerbs.Get, $"Template/Email?id={id}");

            if (!response.isSuccess)
            {
                return(HttpNotFound());
            }

            DeleteNotificationTemplateModel model = new DeleteNotificationTemplateModel
            {
                Id = response.Data.Id,
                NotificationType = response.Data.NotificationType,
                TemplateName     = response.Data.TemplateName,
                TemplateMessage  = response.Data.TemplateMessage,
                CreatedByName    = response.Data.CreatedByName,
                CreatedDate      = response.Data.CreatedDate,
                LastModified     = response.Data.LastModified,
                enableSMSMessage = response.Data.enableSMSMessage,
                SMSMessage       = response.Data.SMSMessage,
                enableWebMessage = response.Data.enableWebMessage,
                WebMessage       = response.Data.WebMessage,
            };

            return(View(model));
        }
        public async Task <ActionResult> Edit(EditNotificationTemplateModel model)
        {
            if (ModelState.IsValid)
            {
                List <string> ListA, ParamList;// = new List<string>();
                ListA     = new List <string>();
                ParamList = new List <string>();
                if (model.enableEmail)
                {
                    ParamList = ParamList.Union(ListA).ToList();
                    if (model.TemplateSubject != null)
                    {
                        ParamList = ParamList.Union(ParameterListing(model.TemplateSubject)).ToList();
                    }
                    if (model.TemplateMessage != null)
                    {
                        ParamList = ParamList.Union(ParameterListing(model.TemplateMessage)).ToList();
                    }
                }
                if (model.enableSMSMessage)
                {
                    if (model.SMSMessage != null)
                    {
                        ParamList = ParamList.Union(ParameterListing(model.SMSMessage)).ToList();
                    }
                }
                if (model.enableWebMessage)
                {
                    if (model.WebMessage != null && model.WebNotifyLink != null)
                    {
                        ParamList = ParamList.Union(ParameterListing(model.WebMessage)).ToList();
                        ParamList = ParamList.Union(ParameterListing(model.WebNotifyLink)).ToList();
                    }
                }

                model.ParameterList   = ParamList;
                model.TemplateMessage = Server.HtmlEncode(model.TemplateMessage);
                var response = await WepApiMethod.SendApiAsync <EditNotificationTemplateModel>(HttpVerbs.Put, $"Template/Email?id={model.Id}", model);

                if (response.isSuccess)
                {
                    //aiman edit
                    await LogActivity(Modules.Setting, "Update Notification Template");

                    TempData["SuccessMessage"] = "Notification Template updated successfully";

                    return(RedirectToAction("Details", "EmailTemplates", new { area = "Template", @id = model.Id }));
                }
                else
                {
                    TempData["ErrorMessage"] = "Failed to update Notification Template";
                    return(RedirectToAction("Details", "EmailTemplates", new { area = "Template", @id = model.Id }));
                }
            }
            else
            {
                TempData["ErrorMessage"] = "Failed to update Notification Template";
                return(RedirectToAction("Details", "EmailTemplates", new { area = "Template", @id = model.Id }));
            }
        }
예제 #14
0
        public async Task <ActionResult> Edit(int id)
        {
            var response = await WepApiMethod.SendApiAsync <EditTargetedGroup>(HttpVerbs.Get, $"Setting/Group/GetSingle?id={id}");

            if (!response.isSuccess)
            {
                return(HttpNotFound());
            }

            var model = response.Data;

            var resCities = await WepApiMethod.SendApiAsync <List <ReturnTargetedGroupCities> >(HttpVerbs.Get, $"Setting/Group/GetCities");

            if (!resCities.isSuccess)
            {
                return(HttpNotFound());
            }

            var cities = resCities.Data;

            //ViewBag.CityId = new SelectList(cities, "Code", "Name", model.CityCode);
            ViewBag.Cities = cities;

            return(View(model));
        }
        public async Task <ActionResult> Create(CreateRewardActivityPointModel model)
        {
            if (ModelState.IsValid)
            {
                CreateRewardActivityPointModel obj = new CreateRewardActivityPointModel
                {
                    CourseId    = model.CourseId,
                    Value       = model.Value,
                    CreatedBy   = (int)CurrentUser.UserId,
                    CreatedDate = DateTime.Now
                };

                var response = await WepApiMethod.SendApiAsync <CreateRewardActivityPointModel>
                                   (HttpVerbs.Post, $"Reward/RewardActivityPoint", obj);

                if (response.isSuccess)
                {
                    await LogActivity(Modules.Setting, "Create Reward Point for activity");

                    TempData["SuccessMessage"] = "Reward Point for Activity created successfully";
                    return(RedirectToAction("List"));
                }
                else
                {
                    TempData["ErrorMessage"] = "Failed to create Reward Point for Activity";
                    return(RedirectToAction("List"));
                }
            }
            else
            {
                TempData["ErrorMessage"] = "Failed to create Reward Point for Activity";
                return(RedirectToAction("List"));
            }
        }
예제 #16
0
        // GET: Reward/RewardRedemptions/Delete/5
        public async Task <ActionResult> Delete(int?id)
        {
            if (id == null)
            {
                return(HttpNotFound());
            }
            var response = await WepApiMethod.SendApiAsync <DetailRewardRedemptionModel>
                               (HttpVerbs.Get, $"Reward/RewardRedemption?id={id}");

            if (!response.isSuccess)
            {
                return(HttpNotFound());
            }

            DeleteRewardRedemptionModel model = new DeleteRewardRedemptionModel
            {
                Id             = response.Data.Id,
                Description    = response.Data.Description,
                RewardCode     = response.Data.RewardCode,
                DiscountValue  = response.Data.DiscountValue,
                PointsToRedeem = response.Data.PointsToRedeem,
                ValidDuration  = response.Data.ValidDuration,
                CreatedBy      = response.Data.CreatedBy,
                CreatedByName  = response.Data.CreatedByName,
                CreatedDate    = response.Data.CreatedDate
            };

            return(View(model));
        }
예제 #17
0
        public async Task <ActionResult> SubmitForVerification(int id, string title)
        {
            if (!CurrentUser.HasAccess(UserAccess.CourseCreate) &&
                !CurrentUser.HasAccess(UserAccess.CourseEdit))
            {
                return(new HttpUnauthorizedResult());
            }

            var model = new CourseApprovalLogModel
            {
                CreatedBy     = CurrentUser.UserId.Value,
                CreatedByName = CurrentUser.Name,
                CourseId      = id,
            };

            var response = await WepApiMethod.SendApiAsync <CourseApprovalLogModel>(HttpVerbs.Post, CourseApprovalApiUrl.SubmitForVerification, model);

            if (response.isSuccess)
            {
                await LogActivity(Modules.Learning, "Successfully submit Course For Verification. Course : " + title);

                await Notifier.SubmitCourseForVerication(id, CurrentUser.UserId.Value, "", CurrentUser.Name,
                                                         title, Url.AbsoluteAction("Approve", "CourseApprovals", new { id = id }));

                TempData["SuccessMessage"] = $"The Course {title} has been successfully submitted for verification.";
            }
            else
            {
                await LogActivity(Modules.Learning, "Error submit Course For Verification. Course : " + title);

                TempData["ErrorMessage"] = $"Error submitting the course {title} for verification.";
            }
            return(RedirectToAction("Content", "Courses", new { area = "eLearning", @id = id }));
        }
        public async Task <ActionResult> Edit()
        {
            EditSLAReminderModel model = new EditSLAReminderModel
            {
                Id                = Convert.ToInt32(Request["item.Id"]),
                ETCode            = Request["item.ETCode"],
                SLAResolutionTime = Convert.ToInt32(Request["SLAResolutionTime"]),
                IntervalDuration  = Convert.ToInt32(Request["IntervalDuration"]),
                SLADurationType   = (SLADurationType)Convert.ToInt32(Request["item.SLADurationType"])
            };

            if (model != null)
            {
                var response = await WepApiMethod.SendApiAsync <EditSLAReminderModel>(HttpVerbs.Put, $"Reminder/SLA/?id={model.Id}", model);

                if (response.isSuccess)
                {
                    await LogActivity(Modules.Setting, "Update SLA Reminder Settings");

                    TempData["SuccessMessage"] = "SLA Reminder updated successfully";

                    return(RedirectToAction("List", new { pin = model.Id }));
                }
                else
                {
                    TempData["ErrorMessage"] = "Failed to update SLA Reminder Settings";
                    return(RedirectToAction("List"));
                }
            }
            else
            {
                TempData["ErrorMessage"] = "Failed to update SLA Reminder Settings";
                return(RedirectToAction("List"));
            }
        }
예제 #19
0
        public async Task <ActionResult> Edit(int id, EditRewardRedemptionModel model)
        {
            if (ModelState.IsValid)
            {
                var response = await WepApiMethod.SendApiAsync <EditRewardActivityPointModel>
                                   (HttpVerbs.Put, $"Reward/RewardRedemption?id={model.Id}", model);

                if (response.isSuccess)
                {
                    await LogActivity(Modules.Setting, "Update Reward Redemption Setting");

                    TempData["SuccessMessage"] = "Reward Redemption Settings updated successfully";
                    return(RedirectToAction("Details", "RewardRedemptions", new { area = "Reward", @id = model.Id }));
                }
                else
                {
                    TempData["ErrorMessage"] = "Failed to update Reward Redemption Setting";
                    return(RedirectToAction("Details", "RewardRedemptions", new { area = "Reward", @id = model.Id }));
                }
            }
            else
            {
                TempData["ErrorMessage"] = "Failed to update Reward Redemption Setting";
                return(RedirectToAction("Details", "RewardRedemptions", new { area = "Reward", @id = model.Id }));
            }
        }
예제 #20
0
        public async Task <ActionResult> Create(CreateTargetedGroup model)
        {
            var dupName = await WepApiMethod.SendApiAsync <bool>(HttpVerbs.Get, $"Setting/Group/NameExists?id={null}&name={model.Name}");

            if (dupName.Data)
            {
                ModelState.AddModelError("Name", "A Group with the same Name already exists in the system");
            }

            if (ModelState.IsValid)
            {
                var response = await WepApiMethod.SendApiAsync <string>(HttpVerbs.Post, $"Setting/Group/Create", model);

                if (response.isSuccess)
                {
                    await LogActivity(Modules.Setting, "Create Target Group: " + response.Data, model);

                    TempData["SuccessMessage"] = "Target Group " + response.Data + " created successfully.";

                    return(RedirectToAction("Index", "Group", new { area = "Setting" }));
                }
                else
                {
                    TempData["SuccessMessage"] = "Failed to create Target Group.";

                    return(RedirectToAction("Index", "Group", new { area = "Setting" }));
                }
            }

            return(View(model));
        }
예제 #21
0
        public async Task <ActionResult> Create(CreateOrEditCourseModel model, string Submittype)
        {
            if (ModelState.IsValid)
            {
                model.CreatedBy     = CurrentUser.UserId.Value;
                model.CreatedByName = CurrentUser.Name;

                //check coursecode
                var course = db.Courses.FirstOrDefault(x => x.Code.Equals(model.Code, StringComparison.OrdinalIgnoreCase));

                if (course != null) // change == to != by wawar
                {
                    TempData["ErrorMessage"] = $"There is already a course with the Course Code {course.Code}. Please select a new code.";

                    await GetCategories();

                    return(View(model));
                }

                var response = await WepApiMethod.SendApiAsync <string>(HttpVerbs.Post, CourseApiUrl.CreateCourse, model);

                if (response.isSuccess)
                {
                    string[] resparray = response.Data.Split('|');
                    string   newid     = resparray[0];
                    //string title = resparray[1];

                    //TempData["SuccessMessage"] = "Course successfully created. Now you can add contents.";

                    await LogActivity(Modules.Learning, "Create Course : " + model.Title);

                    var id = response.Data;

                    if (Submittype == "Save")
                    {
                        TempData["SuccessMessage"] = "New Course titled " + model.Title + " created successfully and saved as draft.";

                        return(RedirectToAction("Index", "Courses", new { area = "eLearning" }));
                    }
                    else
                    {
                        return(RedirectToAction("Review", "Courses", new { area = "eLearning", @id = newid }));
                    }
                }
                else
                {
                    TempData["SuccessMessage"] = "Failed to create new Course.";

                    return(RedirectToAction("Index", "Courses", new { area = "eLearning" }));
                }
            }

            //await GetCategories();
            ViewBag.CategoryId = new SelectList(db.RefCourseCategories, "Id", "Name", model.CategoryId);

            return(View(model));
        }
예제 #22
0
        public async Task <ActionResult> LogIn(LogInModel model)
        {
            if (ModelState.IsValid)
            {
                var resLogin = await WepApiMethod.SendApiAsync <int?>(HttpVerbs.Get, $"Auth?loginId={model.LoginId}&password={model.Password}");

                if (resLogin.isSuccess)
                {
                    var userId = resLogin.Data;

                    if (userId != null)
                    {
                        var resUser = await WepApiMethod.SendApiAsync <DetailsUserModel>(HttpVerbs.Get, $"Administration/User?id={userId}");

                        if (resUser.isSuccess)
                        {
                            var user = resUser.Data;

                            if (user != null)
                            {
                                SignInUser(
                                    new CurrentUserModel
                                {
                                    userid    = user.Id,
                                    usertype  = user.UserType.ToString(),
                                    loginid   = user.LoginId,
                                    name      = user.Name,
                                    email     = user.Email,
                                    isenable  = user.IsEnable,
                                    validfrom = user.ValidFrom,
                                    validto   = user.ValidTo,
                                    avatar    = user.AvatarImageUrl,
                                    access    = user.UserAccesses.Select(s => ((int)s).ToString()).ToList()
                                }
                                    );
                            }

                            await LogActivity(Modules.System, "User Sign In", new { UserId = user.Id, Name = user.Name }, user.Id);

                            return(Redirect(GetRedirectUrl(model.ReturnUrl)));
                        }
                    }
                    else
                    {
                        TempData["ErrorMessage"] = Language.Auth.AlertLoginFail;
                    }
                }
                else
                {
                    TempData["ErrorMessage"] = Language.Auth.AlertLoginFail;
                }
            }

            return(View(model));
        }
        private async Task <IEnumerable <GroupCategoryModel> > GetGroups()
        {
            var courses  = Enumerable.Empty <GroupCategoryModel>();
            var response = await WepApiMethod.SendApiAsync <List <GroupCategoryModel> >(HttpVerbs.Get, $"eLearning/CourseDiscussion/GetGroup?id={CurrentUser.UserId.Value}");

            if (response.isSuccess)
            {
                courses = response.Data;
            }
            return(courses);
        }
        private async Task <IEnumerable <CourseDiscussionVisibilityModel> > GetViewCategories()
        {
            var sectors  = Enumerable.Empty <CourseDiscussionVisibilityModel>();
            var response = await WepApiMethod.SendApiAsync <List <CourseDiscussionVisibilityModel> >(HttpVerbs.Get, $"eLearning/CourseDiscussion/GetDiscussionCategory");

            if (response.isSuccess)
            {
                sectors = response.Data;
            }
            return(sectors);
        }
        public async Task <ActionResult> List()
        {
            var response = await WepApiMethod.SendApiAsync <List <CourseDiscussionModel> >(HttpVerbs.Get, $"eLearning/CourseDiscussion");

            if (response.isSuccess)
            {
                return(View(response.Data));
            }

            return(View(new List <CourseDiscussionModel>()));
        }
예제 #26
0
        public async Task <ActionResult> GetCountryCode(int?Id)
        {
            if (Id == null)
            {
                return(HttpNotFound());
            }

            var response = await WepApiMethod.SendApiAsync <CountryModel>(HttpVerbs.Get, $"Administration/Country?id={Id}");

            return(Json(response.Data, JsonRequestBehavior.AllowGet));
        }
예제 #27
0
        public async Task <ActionResult> Edit(int?id)
        {
            if (id == null)
            {
                return(HttpNotFound());
            }

            var response = await WepApiMethod.SendApiAsync <DetailsCompanyModel>(HttpVerbs.Get, $"Administration/Company?id={id}");

            if (!response.isSuccess)
            {
                return(HttpNotFound());
            }

            var model = new EditCompanyModel
            {
                Id                   = response.Data.Id,
                Type                 = response.Data.Type,
                CompanyName          = response.Data.CompanyName,
                AgencyName           = response.Data.AgencyName,
                MinistryId           = response.Data.Ministry != null ? response.Data.Ministry.Id : (int?)null,
                SectorId             = response.Data.Sector != null ? response.Data.Sector.Id : (int?)null,
                CompanyRegNo         = response.Data.CompanyRegNo,
                Address1             = response.Data.Address1,
                Address2             = response.Data.Address2,
                PostCodeMalaysian    = response.Data.PostCodeMalaysian,
                PostCodeNonMalaysian = response.Data.PostCodeNonMalaysian,
                City                 = response.Data.City,
                StateId              = response.Data.State.Id,
                State                = response.Data.State.Name,
                CountryId            = response.Data.Country.Id,
                CompanyPhoneNo       = response.Data.CompanyPhoneNo,
                CountryCode          = response.Data.CountryCode,
                Name                 = response.Data.Name,
                ICNo                 = response.Data.ICNo,
                PassportNo           = response.Data.PassportNo,
                Email                = response.Data.Email,
                MobileNo             = response.Data.MobileNo,
                RoleIds              = response.Data.Roles.Select(s => s.Id).ToArray(),
                Status               = response.Data.Status
            };

            var countries = await GetCountries();

            model.MalaysiaCountryId = countries.Where(c => c.Name == "Malaysia").Select(s => s.Id).FirstOrDefault();

            model.Sectors    = new SelectList(await GetSectors(), "Id", "Name", 0);
            model.States     = new SelectList(await GetStates(), "Id", "Name", 0);
            model.Ministries = new SelectList(await GetMinistry(), "Id", "Name", 0);
            model.Countries  = new SelectList(countries.Where(c => c.Name != "Malaysia"), "Id", "Name", 0);
            model.Roles      = new SelectList(await GetRoles(), "Id", "Name", 0);

            return(View(model));
        }
예제 #28
0
        public async Task <ActionResult> List()
        {
            var response = await WepApiMethod.SendApiAsync <List <SectorModel> >(HttpVerbs.Get, $"Administration/Sector");

            if (response.isSuccess)
            {
                return(View(response.Data));
            }

            return(View(new List <SectorModel>()));
        }
예제 #29
0
        private async Task <IEnumerable <FeedbackVisibility> > GetVisibility()
        {
            var sectors  = Enumerable.Empty <FeedbackVisibility>();
            var response = await WepApiMethod.SendApiAsync <List <FeedbackVisibility> >(HttpVerbs.Get, $"eLearning/Feedback/GetVisibility");

            if (response.isSuccess)
            {
                sectors = response.Data;
            }
            return(sectors);
        }
예제 #30
0
        public async Task <CourseEventModel> TryGetEventByCourseId(int id)
        {
            var response = await WepApiMethod.SendApiAsync <CourseEventModel>(HttpVerbs.Get, CourseEventApiUrl.GetEventByCourseId + $"?id={id}");

            if (response.isSuccess)
            {
                return(response.Data);
            }

            return(null);
        }