protected void btn_CreateCourse_Click(object sender, EventArgs e) { string contents = core_course_create_courses(txt_fullname.Text.Trim(), txt_shortname.Text.Trim(), txt_categoryid.Text.Trim(), txt_Idnumber.Text.Trim(), txt_Summary.Text.Trim(), txt_summaryformat.Text.Trim(), txt_format.Text.Trim(), txt_showgrades.Text.Trim(), txt_NewsItems.Text.Trim(), txt_StatrtDate.Text.Trim(), txt_EndDate.Text.Trim(), txt_numsections.Text.Trim(), txt_maxbytes.Text.Trim(), txt_ShowReports.Text.Trim(), txt_visible.Text.Trim(), txt_groupmode.Text.Trim(), txt_groupmodeforce.Text.Trim(), txt_defaultgroupingid.Text.Trim(), txt_enablecompletion.Text.Trim(), txt_completionnotify.Text.Trim(), txt_lang.Text.Trim()); // Deserialize JavaScriptSerializer serializer = new JavaScriptSerializer(); if (contents.Contains("exception")) { // Error MoodleException moodleError = serializer.Deserialize <MoodleException>(contents); lbl_results.Text = contents; } else { // Good List <MoodleCreateCourseResponse> newCourses = serializer.Deserialize <List <MoodleCreateCourseResponse> >(contents); string id = ""; string shortname = ""; foreach (var value in newCourses) { id = value.id; shortname = value.shortname; } lbl_results.Text = "Course Created Successfuly-" + id + "/" + shortname + ""; } }
protected void btn_CreateGroup_Click(object sender, EventArgs e) { string idimportcourse = ""; string contentsimport = core_course_get_courses_by_field("idnumber", txt_courseid.Text.Trim()); JavaScriptSerializer serializer1 = new JavaScriptSerializer(); if (contentsimport.Contains("exception")) { // Error MoodleException moodleError = serializer1.Deserialize <MoodleException>(contentsimport); lbl_results.Text = contentsimport; } else { // Good //List<MoodleCourses_Get> newCourses1 = serializer.Deserialize<List<MoodleCourses_Get>>(contents1); //string fullname1 = ""; //foreach (var value in newCourses1) //{ // idimportcourse = value.id; // fullname1 = value.fullname; //} //object yourOjbect = new JavaScriptSerializer().DeserializeObject(contentsimport); DataSet importobject = JsonConvert.DeserializeObject <DataSet>(contentsimport); idimportcourse = importobject.Tables[0].Rows[0]["id"].ToString(); } string contents = core_group_create_groups(idimportcourse, txt_groupname.Text.Trim(), txt_groupdesc.Text.Trim(), txt_descformat.Text.Trim(), txt_enrolkey.Text.Trim(), txt_idnumber.Text.Trim()); // Deserialize JavaScriptSerializer serializer = new JavaScriptSerializer(); if (contents.Contains("exception")) { // Error MoodleException moodleError = serializer.Deserialize <MoodleException>(contents); lbl_results.Text = contents; } else { // Good List <MoodleCreateGroupResponse> newGroups = serializer.Deserialize <List <MoodleCreateGroupResponse> >(contents); string id = ""; string name = ""; foreach (var value in newGroups) { id = value.id; name = value.name; } lbl_results.Text = "Group Created Successfully-" + id + "/" + name + ""; } }
protected void btn_CreateCourse_Click(object sender, EventArgs e) { ServicePointManager.Expect100Continue = true; ServicePointManager.DefaultConnectionLimit = 9999; ServicePointManager.SecurityProtocol = (SecurityProtocolType)3072; String token = "1b4cb9114197a84985695b19b1164d0a"; String postData = String.Format("options[ids][0]=2215"); string createRequest = string.Format("https://lms.ectmoodle.ae/webservice/rest/server.php?wstoken={0}&wsfunction={1}&moodlewsrestformat=json", token, "core_course_get_courses"); // Call Moodle REST Service HttpWebRequest req = (HttpWebRequest)WebRequest.Create(createRequest); req.Method = "POST"; req.ContentType = "application/x-www-form-urlencoded"; // Encode the parameters as form data: byte[] formData = UTF8Encoding.UTF8.GetBytes(postData); req.ContentLength = formData.Length; // Write out the form Data to the request: using (Stream post = req.GetRequestStream()) { post.Write(formData, 0, formData.Length); } // Get the Response HttpWebResponse resp = (HttpWebResponse)req.GetResponse(); Stream resStream = resp.GetResponseStream(); StreamReader reader = new StreamReader(resStream); string contents = reader.ReadToEnd(); // Deserialize JavaScriptSerializer serializer = new JavaScriptSerializer(); if (contents.Contains("exception")) { // Error MoodleException moodleError = serializer.Deserialize <MoodleException>(contents); lbl_results.Text = contents; } else { // Good List <String> newCourses = serializer.Deserialize <List <String> >(contents); } }
protected void btn_UnEnroll_Click(object sender, EventArgs e) { string contents = enrol_manual_unenrol_users(txt_userid.Text.Trim(), txt_Courseid.Text.Trim(), txt_roleid.Text.Trim()); // Deserialize JavaScriptSerializer serializer = new JavaScriptSerializer(); if (contents.Contains("exception")) { // Error MoodleException moodleError = serializer.Deserialize <MoodleException>(contents); lbl_results.Text = contents; } else { // Good List <string> newGroups = serializer.Deserialize <List <string> >(contents); lbl_results.Text = "User UnEnrolled Successfully"; } }
protected void btn_Delete_Click(object sender, EventArgs e) { string contents = core_group_delete_groups(txt_groupid.Text.Trim()); // Deserialize JavaScriptSerializer serializer = new JavaScriptSerializer(); if (contents.Contains("exception")) { // Error MoodleException moodleError = serializer.Deserialize <MoodleException>(contents); lbl_results.Text = contents; } else { // Good List <string> newGroups = serializer.Deserialize <List <string> >(contents); lbl_results.Text = "Group Deleted Successfuly"; } }
public void PostCreateRequest(string createRequest, string postData) { // Call Moodle REST Service HttpWebRequest request = (HttpWebRequest)WebRequest.Create(createRequest); request.Method = "POST"; request.ContentType = "application/x-www-form-urlencoded"; // Encode the parameters as form data: byte[] formData = UTF8Encoding.UTF8.GetBytes(postData); request.ContentLength = formData.Length; // Write out the form Data to the request: using (Stream post = request.GetRequestStream()) { post.Write(formData, 0, formData.Length); } // Get the Response HttpWebResponse response = (HttpWebResponse)request.GetResponse(); Stream responseStream = response.GetResponseStream(); StreamReader reader = new StreamReader(responseStream); string contents = reader.ReadToEnd(); // Deserialize JavaScriptSerializer serializer = new JavaScriptSerializer(); if (contents.Contains("exception")) { // Error MoodleException moodleError = serializer.Deserialize <MoodleException>(contents); } else { // Good List <MoodleCreateUserResponse> newUsers = serializer.Deserialize <List <MoodleCreateUserResponse> >(contents); //Check the results foreach (var createdUser in newUsers) { Console.WriteLine("Created User => Id: " + createdUser.Id + " Username: " + createdUser.Username); } } }
static void Main(string[] args) { String token = "token-goes-here"; MoodleUser user = new MoodleUser(); user.username = HttpUtility.UrlEncode("*****@*****.**"); user.password = HttpUtility.UrlEncode("Pass@Fakew0rd"); user.firstname = HttpUtility.UrlEncode("Daryl"); user.lastname = HttpUtility.UrlEncode("Orwin"); user.email = HttpUtility.UrlEncode("*****@*****.**"); List <MoodleUser> userList = new List <MoodleUser>(); userList.Add(user); Array arrUsers = userList.ToArray(); String postData = String.Format("users[0][username]={0}&users[0][password]={1}&users[0][firstname]={2}&users[0][lastname]={3}&users[0][email]={4}", user.username, user.password, user.firstname, user.lastname, user.email); string createRequest = string.Format("http://moodleurl.com/webservice/rest/server.php?wstoken={0}&wsfunction={1}&moodlewsrestformat=json", token, "core_user_create_users"); // Call Moodle REST Service HttpWebRequest req = (HttpWebRequest)WebRequest.Create(createRequest); req.Method = "POST"; req.ContentType = "application/x-www-form-urlencoded"; // Encode the parameters as form data: byte[] formData = UTF8Encoding.UTF8.GetBytes(postData); req.ContentLength = formData.Length; // Write out the form Data to the request: using (Stream post = req.GetRequestStream()) { post.Write(formData, 0, formData.Length); } // Get the Response HttpWebResponse resp = (HttpWebResponse)req.GetResponse(); Stream resStream = resp.GetResponseStream(); StreamReader reader = new StreamReader(resStream); string contents = reader.ReadToEnd(); // Deserialize JavaScriptSerializer serializer = new JavaScriptSerializer(); if (contents.Contains("exception")) { // Error MoodleException moodleError = serializer.Deserialize <MoodleException>(contents); } else { // Good List <MoodleCreateUserResponse> newUsers = serializer.Deserialize <List <MoodleCreateUserResponse> >(contents); } }
public ActionResult RegisterForMoodle(int?eh) { string moodleURL = string.Concat("http://", Properties.Settings.Default.MoodleBaseURL, "/webservice/rest/server.php"); string function = "core_user_create_users"; string[] nameComponents = User.Identity.Name.Split(new Char[] { ' ' }); try { MoodleUser mUser = new MoodleUser() { username = HttpUtility.UrlEncode(User.Identity.Name.Replace(@"'", "").Replace(" ", "").ToLower()), password = HttpUtility.UrlEncode("r3MuSU53r#"), email = HttpUtility.UrlEncode(UserManager.FindById(User.Identity.GetUserId()).EmailAddress), firstname = nameComponents[0] }; if (nameComponents.Length == 1) { mUser.lastname = "R3man"; } else if (nameComponents.Length == 2) { mUser.lastname = nameComponents[1]; } else if (nameComponents.Length == 3) { mUser.lastname = string.Concat(nameComponents[1], " ", nameComponents[2]); } ; //List<MoodleUser> userList = new List<MoodleUser>(); //userList.Add(mUser); //Array arrUsers = userList.ToArray(); String postData = String.Format("users[0][username]={0}&users[0][password]={1}&users[0][firstname]={2}&users[0][lastname]={3}&users[0][email]={4}", mUser.username, mUser.password, mUser.firstname, mUser.lastname, mUser.email); string createRequest = string.Format("{0}?wstoken={1}&wsfunction={2}&moodlewsrestformat=json", moodleURL, Properties.Settings.Default.MoodleToken, function); HttpWebRequest req = (HttpWebRequest)WebRequest.Create(createRequest); req.Method = "POST"; req.ContentType = "application/x-www-form-urlencoded"; byte[] formData = UTF8Encoding.UTF8.GetBytes(postData); req.ContentLength = formData.Length; using (Stream post = req.GetRequestStream()) { post.Write(formData, 0, formData.Length); } // Get the Response HttpWebResponse resp = (HttpWebResponse)req.GetResponse(); Stream resStream = resp.GetResponseStream(); StreamReader reader = new StreamReader(resStream); string contents = reader.ReadToEnd(); // Deserialize JavaScriptSerializer serializer = new JavaScriptSerializer(); if (contents.Contains("exception")) { // Error MoodleException moodleError = serializer.Deserialize <MoodleException>(contents); TempData.Add("Message", "An error occurred: Please contact Clyde en Marland with this message; "); TempData.Add("ErrorMessage", moodleError.debuginfo); } else { // Good TempData.Add("Message", "Registration Complete!"); List <MoodleCreateUserResponse> newUsers = serializer.Deserialize <List <MoodleCreateUserResponse> >(contents); } } catch (Exception ex) { TempData.Add("Message", "An error occurred: Please contact Clyde en Marland with this message; "); TempData.Add("ErrorMessage", ex.Message); } //return View("Index#MoodleTab"); return(RedirectToAction("Index")); }
protected void btn_CreateCourse_Click(object sender, EventArgs e) { ServicePointManager.Expect100Continue = true; ServicePointManager.DefaultConnectionLimit = 9999; ServicePointManager.SecurityProtocol = (SecurityProtocolType)3072; String token = "1b4cb9114197a84985695b19b1164d0a"; long start = ToUnixTimestamp(Convert.ToDateTime(txt_StatrtDate.Text)); long end = ToUnixTimestamp(Convert.ToDateTime(txt_EndDate.Text)); //Start Create New Course MoodleCourses courses = new MoodleCourses(); courses.fullname = HttpUtility.UrlEncode(txt_fullname.Text.Trim()); courses.shortname = HttpUtility.UrlEncode(txt_shortname.Text.Trim()); courses.categoryid = HttpUtility.UrlEncode(txt_categoryid.Text.Trim()); courses.idnumber = HttpUtility.UrlEncode(txt_Idnumber.Text.Trim()); courses.summary = HttpUtility.UrlEncode(txt_Summary.Text.Trim()); courses.summaryformat = HttpUtility.UrlEncode(txt_summaryformat.Text.Trim()); courses.format = HttpUtility.UrlEncode(txt_format.Text.Trim()); courses.showgrades = HttpUtility.UrlEncode(txt_showgrades.Text.Trim()); courses.newsitems = HttpUtility.UrlEncode(txt_NewsItems.Text.Trim()); courses.startdate = HttpUtility.UrlEncode(start.ToString()); courses.enddate = HttpUtility.UrlEncode(end.ToString()); courses.numsections = HttpUtility.UrlEncode(txt_numsections.Text.Trim()); courses.maxbytes = HttpUtility.UrlEncode(txt_maxbytes.Text.Trim()); courses.showreports = HttpUtility.UrlEncode(txt_ShowReports.Text.Trim()); courses.visible = HttpUtility.UrlEncode(txt_visible.Text.Trim()); courses.groupmode = HttpUtility.UrlEncode(txt_groupmode.Text.Trim()); courses.groupmodeforce = HttpUtility.UrlEncode(txt_groupmodeforce.Text.Trim()); courses.defaultgroupingid = HttpUtility.UrlEncode(txt_defaultgroupingid.Text.Trim()); courses.enablecompletion = HttpUtility.UrlEncode(txt_enablecompletion.Text.Trim()); courses.completionnotify = HttpUtility.UrlEncode(txt_completionnotify.Text.Trim()); courses.lang = HttpUtility.UrlEncode(txt_lang.Text.Trim()); List <MoodleCourses> coursesList = new List <MoodleCourses>(); coursesList.Add(courses); Array arrCourses = coursesList.ToArray(); //String postData = String.Format("courses[0][fullname]={0}&courses[0][shortname]={1}&courses[0][categoryid]={2}&courses[0][idnumber]={3}&courses[0][summary]={4}&courses[0][summaryformat]={5}&courses[0][format]={6}&courses[0][showgrades]={7}&courses[0][newsitems]={8}&courses[0][showreports]={9}&courses[0][visible]={10}&courses[0][groupmode]={11}&courses[0][groupmodeforce]={12}&courses[0][defaultgroupingid]={13}", courses.fullname, courses.shortname, courses.categoryid, courses.idnumber, courses.summary, courses.summaryformat, courses.format, courses.showgrades, courses.newsitems, courses.showreports, courses.visible, courses.groupmode, courses.groupmodeforce, courses.defaultgroupingid); String postData = String.Format("courses[0][fullname]={0}&courses[0][shortname]={1}&courses[0][categoryid]={2}&courses[0][idnumber]={3}&courses[0][summary]={4}&courses[0][summaryformat]={5}&courses[0][format]={6}&courses[0][showgrades]={7}&courses[0][newsitems]={8}&courses[0][startdate]={9}&courses[0][enddate]={10}&courses[0][numsections]={11}&courses[0][maxbytes]={12}&courses[0][showreports]={13}&courses[0][visible]={14}&courses[0][groupmode]={15}&courses[0][groupmodeforce]={16}&courses[0][defaultgroupingid]={17}&courses[0][enablecompletion]={18}&courses[0][completionnotify]={19}&courses[0][lang]={20}", courses.fullname, courses.shortname, courses.categoryid, courses.idnumber, courses.summary, courses.summaryformat, courses.format, courses.showgrades, courses.newsitems, courses.startdate, courses.enddate, courses.numsections, courses.maxbytes, courses.showreports, courses.visible, courses.groupmode, courses.groupmodeforce, courses.defaultgroupingid, courses.enablecompletion, courses.completionnotify, courses.lang); string createRequest = string.Format("https://lms.ectmoodle.ae/webservice/rest/server.php?wstoken={0}&wsfunction={1}&moodlewsrestformat=json", token, "core_course_create_courses"); // Call Moodle REST Service HttpWebRequest req = (HttpWebRequest)WebRequest.Create(createRequest); req.Method = "POST"; req.ContentType = "application/x-www-form-urlencoded"; // Encode the parameters as form data: byte[] formData = UTF8Encoding.UTF8.GetBytes(postData); req.ContentLength = formData.Length; // Write out the form Data to the request: using (Stream post = req.GetRequestStream()) { post.Write(formData, 0, formData.Length); } // Get the Response HttpWebResponse resp = (HttpWebResponse)req.GetResponse(); Stream resStream = resp.GetResponseStream(); StreamReader reader = new StreamReader(resStream); string contents = reader.ReadToEnd(); // Deserialize JavaScriptSerializer serializer = new JavaScriptSerializer(); if (contents.Contains("exception")) { // Error MoodleException moodleError = serializer.Deserialize <MoodleException>(contents); lbl_results.Text = contents; } else { // Good List <MoodleCreateCourseResponse> newCourses = serializer.Deserialize <List <MoodleCreateCourseResponse> >(contents); string id = ""; string shortname = ""; foreach (var value in newCourses) { id = value.id; shortname = value.shortname; } //End Create New Course // Deserialize string idimportcourse = ""; string contentsimport = core_course_get_courses_by_field("idnumber", txt_ImportCourseID.Text.Trim()); JavaScriptSerializer serializer1 = new JavaScriptSerializer(); if (contentsimport.Contains("exception")) { // Error MoodleException moodleError = serializer1.Deserialize <MoodleException>(contentsimport); lbl_results.Text = contentsimport; } else { // Good //List<MoodleCourses_Get> newCourses1 = serializer.Deserialize<List<MoodleCourses_Get>>(contents1); //string fullname1 = ""; //foreach (var value in newCourses1) //{ // idimportcourse = value.id; // fullname1 = value.fullname; //} //object yourOjbect = new JavaScriptSerializer().DeserializeObject(contentsimport); DataSet importobject = JsonConvert.DeserializeObject <DataSet>(contentsimport); idimportcourse = importobject.Tables[0].Rows[0]["id"].ToString(); } //Start Import Previous Course Contents to the Created Course Now MoodleImportCourse import = new MoodleImportCourse(); import.importfrom = HttpUtility.UrlEncode(idimportcourse); import.importto = HttpUtility.UrlEncode(id); import.deletecontent = HttpUtility.UrlEncode("0"); import.name = HttpUtility.UrlEncode("activities"); import.value = HttpUtility.UrlEncode("1"); import.name1 = HttpUtility.UrlEncode("blocks"); import.value1 = HttpUtility.UrlEncode("1"); import.name2 = HttpUtility.UrlEncode("filters"); import.value2 = HttpUtility.UrlEncode("1"); List <MoodleImportCourse> importList = new List <MoodleImportCourse>(); importList.Add(import); Array arrImport = importList.ToArray(); String postImportData = String.Format("importfrom={0}&importto={1}&deletecontent={2}&options[0][name]={3}&options[0][value]={4}&options[0][name]={5}&options[0][value]={6}&options[0][name]={7}&options[0][value]={8}", import.importfrom, import.importto, import.deletecontent, import.name, import.value, import.name1, import.value1, import.name2, import.value2); string createRequestImport = string.Format("https://lms.ectmoodle.ae/webservice/rest/server.php?wstoken={0}&wsfunction={1}&moodlewsrestformat=json", token, "core_course_import_course"); // Call Moodle REST Service HttpWebRequest reqImport = (HttpWebRequest)WebRequest.Create(createRequestImport); reqImport.Method = "POST"; reqImport.ContentType = "application/x-www-form-urlencoded"; // Encode the parameters as form data: byte[] formDataImport = UTF8Encoding.UTF8.GetBytes(postImportData); reqImport.ContentLength = formDataImport.Length; // Write out the form Data to the request: using (Stream postImport = reqImport.GetRequestStream()) { postImport.Write(formDataImport, 0, formDataImport.Length); } // Get the Response HttpWebResponse respImport = (HttpWebResponse)reqImport.GetResponse(); Stream resStreamImport = respImport.GetResponseStream(); StreamReader readerImport = new StreamReader(resStreamImport); string contentsImport = readerImport.ReadToEnd(); // Deserialize JavaScriptSerializer serializerImport = new JavaScriptSerializer(); if (contentsImport.Contains("exception")) { // Error MoodleException moodleError = serializerImport.Deserialize <MoodleException>(contentsImport); lbl_results.Text = contentsImport; } else { // Good //End Import Previous Course Contents to the Created Course Now List <string> newImport = serializerImport.Deserialize <List <string> >(contentsImport); //Start Check if any groups were present in the imported course or not; if yes delete all existing groups MoodleGetCourseGroup GetCourse = new MoodleGetCourseGroup(); GetCourse.courseid = HttpUtility.UrlEncode(id); List <MoodleGetCourseGroup> CourseGroupList = new List <MoodleGetCourseGroup>(); CourseGroupList.Add(GetCourse); Array arrCourseGroup = CourseGroupList.ToArray(); String postCourseGroup = String.Format("courseid={0}", GetCourse.courseid); string createRequestCourseGroup = string.Format("https://lms.ectmoodle.ae/webservice/rest/server.php?wstoken={0}&wsfunction={1}&moodlewsrestformat=json", token, "core_group_get_course_groups"); // Call Moodle REST Service HttpWebRequest reqCourseGroup = (HttpWebRequest)WebRequest.Create(createRequestCourseGroup); reqCourseGroup.Method = "POST"; reqCourseGroup.ContentType = "application/x-www-form-urlencoded"; // Encode the parameters as form data: byte[] formCourseGroup = UTF8Encoding.UTF8.GetBytes(postCourseGroup); reqCourseGroup.ContentLength = formCourseGroup.Length; // Write out the form Data to the request: using (Stream postImportCourseGroup = reqCourseGroup.GetRequestStream()) { postImportCourseGroup.Write(formCourseGroup, 0, formCourseGroup.Length); } // Get the Response HttpWebResponse respImportCourseGroup = (HttpWebResponse)reqCourseGroup.GetResponse(); Stream resStreamImportCourseGroup = respImportCourseGroup.GetResponseStream(); StreamReader readerImportCourseGroup = new StreamReader(resStreamImportCourseGroup); string contentsImportCourseGroup = readerImportCourseGroup.ReadToEnd(); JavaScriptSerializer serializerImportCourseGroup = new JavaScriptSerializer(); if (contentsImportCourseGroup.Contains("exception")) { // Error MoodleException moodleError = serializerImportCourseGroup.Deserialize <MoodleException>(contentsImportCourseGroup); lbl_results.Text = contentsImportCourseGroup; } else { // Good List <MoodleGetCourseGroupResponse> newCourseGroup = serializer.Deserialize <List <MoodleGetCourseGroupResponse> >(contentsImportCourseGroup); string groupid = ""; foreach (var value in newCourseGroup) { groupid = value.id; //Start Delete Groups MoodleDeleteGroup DeleteGroup = new MoodleDeleteGroup(); DeleteGroup.groupids = HttpUtility.UrlEncode(groupid); List <MoodleDeleteGroup> DeleteGroupList = new List <MoodleDeleteGroup>(); DeleteGroupList.Add(DeleteGroup); Array arrDeleteGroup = DeleteGroupList.ToArray(); String postDeleteGroup = String.Format("groupids[0]={0}", DeleteGroup.groupids); string createRequestDeleteGroup = string.Format("https://lms.ectmoodle.ae/webservice/rest/server.php?wstoken={0}&wsfunction={1}&moodlewsrestformat=json", token, "core_group_delete_groups"); // Call Moodle REST Service HttpWebRequest reqDeleteGroup = (HttpWebRequest)WebRequest.Create(createRequestDeleteGroup); reqDeleteGroup.Method = "POST"; reqDeleteGroup.ContentType = "application/x-www-form-urlencoded"; // Encode the parameters as form data: byte[] formDeleteGroup = UTF8Encoding.UTF8.GetBytes(postDeleteGroup); reqDeleteGroup.ContentLength = formDeleteGroup.Length; // Write out the form Data to the request: using (Stream postImportDeleteGroup = reqDeleteGroup.GetRequestStream()) { postImportDeleteGroup.Write(formDeleteGroup, 0, formDeleteGroup.Length); } // Get the Response--- HttpWebResponse respImportDeleteGroup = (HttpWebResponse)reqDeleteGroup.GetResponse(); Stream resStreamImportDeleteGroup = respImportDeleteGroup.GetResponseStream(); StreamReader readerImportDeleteGroup = new StreamReader(resStreamImportDeleteGroup); string contentsImportDeleteGroup = readerImportDeleteGroup.ReadToEnd(); JavaScriptSerializer serializerImportDeleteGroup = new JavaScriptSerializer(); if (contentsImportDeleteGroup.Contains("exception")) { // Error MoodleException moodleError = serializerImportDeleteGroup.Deserialize <MoodleException>(contentsImportDeleteGroup); lbl_results.Text = contentsImportDeleteGroup; } else { // Good lbl_results.Text = "Course Created & Imported Successfuly-" + id + "/" + shortname + ""; } //End Delete Groups } } } } }
static void Main(string[] args) { String token = "7e708f0bf5b3911ace4e4922d220fbb0x"; string base_url = @"http://moodle.apexnet.it"; MoodleUser user = new MoodleUser(); user.username = HttpUtility.UrlEncode("mrossi"); user.password = HttpUtility.UrlEncode("fakepassword"); user.firstname = HttpUtility.UrlEncode("Mario"); user.lastname = HttpUtility.UrlEncode("Rossi"); user.email = HttpUtility.UrlEncode("*****@*****.**"); List <MoodleUser> userList = new List <MoodleUser>(); userList.Add(user); Array arrUsers = userList.ToArray(); String postData = String.Format("users[0][username]={0}&users[0][password]={1}&users[0][firstname]={2}&users[0][lastname]={3}&users[0][email]={4}", user.username, user.password, user.firstname, user.lastname, user.email); string createRequest = string.Format(base_url + "/webservice/rest/server.php?wstoken={0}&wsfunction={1}&moodlewsrestformat=json", token, "core_user_create_users"); // Call Moodle REST Service HttpWebRequest req = (HttpWebRequest)WebRequest.Create(createRequest); req.Method = "POST"; req.ContentType = "application/x-www-form-urlencoded"; // Encode the parameters as form data: byte[] formData = UTF8Encoding.UTF8.GetBytes(postData); req.ContentLength = formData.Length; // Write out the form Data to the request: using (Stream post = req.GetRequestStream()) { post.Write(formData, 0, formData.Length); } // Get the Response HttpWebResponse resp = (HttpWebResponse)req.GetResponse(); Stream resStream = resp.GetResponseStream(); StreamReader reader = new StreamReader(resStream); string contents = reader.ReadToEnd(); // Deserialize JsonSerializer serializer = new JsonSerializer(); if (contents.Contains("exception")) { // Error MoodleException moodleError = JsonConvert.DeserializeObject <MoodleException>(contents); } else { // Success List <MoodleCreateUserResponse> newUsers = JsonConvert.DeserializeObject <List <MoodleCreateUserResponse> >(contents); } }
protected void btn_Create_Click(object sender, EventArgs e) { //Start Check if user exists or not string get_users = core_user_get_users("firstname", txt_Username.Text.Trim()); // Deserialize JavaScriptSerializer serializer = new JavaScriptSerializer(); if (get_users.Contains("exception")) { // Error MoodleException moodleError = serializer.Deserialize <MoodleException>(get_users); lbl_results.Text = get_users; } else { // Good Root myDeserializedClass = JsonConvert.DeserializeObject <Root>(get_users); if (myDeserializedClass.users.Count > 0) { string firstname = myDeserializedClass.users[0].firstname; if (txt_Username.Text.Trim() == firstname) { lbl_results.Text = "User Exists Already"; } else { //If user not exists then create a new user with below parameters; string created_user = core_user_create_users(txt_Username.Text.Trim(), txt_Password.Text.Trim(), txt_FirstName.Text.Trim(), txt_LastName.Text.Trim(), txt_Email.Text.Trim(), txt_Auth.Text.Trim(), txt_Mailformat.Text.Trim(), txt_Description.Text.Trim(), txt_City.Text.Trim(), txt_Country.Text.Trim(), txt_firstnamephonetic.Text.Trim(), txt_lastnamephonetic.Text.Trim(), txt_middlename.Text.Trim(), txt_alternatename.Text.Trim()); // Deserialize JavaScriptSerializer serializercreated_user = new JavaScriptSerializer(); if (created_user.Contains("exception")) { // Error MoodleException moodleError = serializercreated_user.Deserialize <MoodleException>(created_user); lbl_results.Text = created_user; } else { List <MoodleCreatedUSer> newImport = serializercreated_user.Deserialize <List <MoodleCreatedUSer> >(created_user); lbl_results.Text = "User Created Successfully"; } } } else { //If user not exists then create a new user with below parameters; string created_user = core_user_create_users(txt_Username.Text.Trim(), txt_Password.Text.Trim(), txt_FirstName.Text.Trim(), txt_LastName.Text.Trim(), txt_Email.Text.Trim(), txt_Auth.Text.Trim(), txt_Mailformat.Text.Trim(), txt_Description.Text.Trim(), txt_City.Text.Trim(), txt_Country.Text.Trim(), txt_firstnamephonetic.Text.Trim(), txt_lastnamephonetic.Text.Trim(), txt_middlename.Text.Trim(), txt_alternatename.Text.Trim()); // Deserialize JavaScriptSerializer serializercreated_user = new JavaScriptSerializer(); if (created_user.Contains("exception")) { // Error MoodleException moodleError = serializercreated_user.Deserialize <MoodleException>(created_user); lbl_results.Text = created_user; } else { List <MoodleCreatedUSer> newImport = serializercreated_user.Deserialize <List <MoodleCreatedUSer> >(created_user); lbl_results.Text = "User Created Successfully"; } } } }