public LewisLogin() { InitializeComponent(); authUrl = BbQuery.getBbLoginUrl(); Console.WriteLine(""); Console.WriteLine("authurl = {0}", authUrl); }
private void btnLogout_Click(object sender, EventArgs e) { Cursor.Current = Cursors.WaitCursor; Application.DoEvents(); BbQuery.BbLogout(); Cursor.Current = Cursors.Default; }
private void btnLogNB_Click(object sender, EventArgs e) { DMClient dmc = new DMClient(((myListItem)cbClients.SelectedItem).id, c); BbQuery.cc = new System.Net.CookieContainer(); BbQuery.cc.Capacity = 1000; BbQuery.BbUrl = dmc.origUrl; if (BbQuery.isMoodle(BbQuery.BbUrl)) { MoodleLogin lg = new MoodleLogin(); lg.ShowDialog(); lg.Dispose(); lg = null; } else { // Login lg = new Login(); BbQuery.getBbParams(); LoginXPXB lg = new LoginXPXB(); lg.ShowDialog(); lg.Dispose(); lg = null; } GC.Collect(); }
private void btnFillCats_Click(object sender, EventArgs e) { if (dmc.token == null) { dmc.token = dmc.getToken(); } cats = BbQuery.getCMSCats(dmc.origUrl, dmc.token); cats.TableName = "cats"; catsGrid.DataSource = cats; //DataSet myCats = new DataSet(); //myCats.Tables.Add(cats); //myCats.Tables.Add(items); //DataRelation catItem = new DataRelation("catItem", cats.Columns["description"], items.Columns["description"]); ////Category c = new Category(); ////DataTableReader dtr = c.CreateDataReader(cats, items); ////c.Load(dtr, LoadOption.OverwriteChanges, c.CATEGORY, c.ITEM_CATEGORY, c.client); //BindingSource masterBindingSource = new BindingSource(); //masterBindingSource.DataSource = myCats; //masterBindingSource.DataMember = "cats"; //BindingSource detailsBindingSource = new BindingSource(); //detailsBindingSource.DataSource = masterBindingSource; //detailsBindingSource.DataMember = "catItem"; //catsGrid.DataSource = masterBindingSource; //itemsGrid.DataSource = detailsBindingSource; }
private void aGrid_RowHeaderMouseClick(object sender, DataGridViewCellMouseEventArgs e) { qpk1 = aGrid.Rows[e.RowIndex].Cells["QPK1"].Value.ToString(); DataTable dt = BbQuery.getAssessment(aGrid.Rows[e.RowIndex].Cells["QPK1"].Value.ToString(), dmc.origUrl, dmc.token); qGrid.DataSource = dt; }
private void btnFillCats_Click(object sender, EventArgs e) { if (dmc.token == null) { dmc.token = dmc.getToken(); } DataTable cats = BbQuery.getCMSCats(dmc.origUrl, dmc.token); cats.TableName = "cats"; DataTable items = BbQuery.getCMSItemCats(dmc.origUrl, dmc.token); items.TableName = "items"; DataSet myCats = new DataSet(); myCats.Tables.Add(cats); myCats.Tables.Add(items); Category c = new Category(); DataTableReader dtr = c.CreateDataReader(cats, items); c.Load(dtr, LoadOption.OverwriteChanges, c.CATEGORY, c.ITEM_CATEGORY, c.client); BindingSource masterBindingSource = new BindingSource(); masterBindingSource.DataSource = c; masterBindingSource.DataMember = c.CATEGORY.TableName; BindingSource detailsBindingSource = new BindingSource(); detailsBindingSource.DataSource = masterBindingSource; detailsBindingSource.DataMember = c.Relations[0].RelationName; catsGrid.DataSource = masterBindingSource; itemsGrid.DataSource = detailsBindingSource; }
private void Lbox2_SelectedIndexChanged(object sender, EventArgs e) { string tt = lbox2.Items[lbox2.SelectedIndex].ToString(); var r = c.DMClients.OrderBy(t => t.Name).AsEnumerable().Where(t => t.Name.Equals(tt)).FirstOrDefault(); dmc = new DMClient(r.id, c); dmc.token = BbQuery.getToken(dmc.origUrl); // authUrl_2.Replace("auth_2", "auth_sha"); var stem = dmc.origUrl.Substring(0, dmc.origUrl.LastIndexOf('/')); authUrl_sha = stem + "/auth_sha.jsp"; dbtype = "oracle"; db = DMClient.getSqldt("SELECT DATA_TYPE FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = 'course_main' and COLUMN_NAME='pk1'", dmc); string dbt = db.Rows[0][0].ToString(); /*pgsql * oracle * mssql */ if (dbt.Equals("bigint")) { dbtype = "pgsql"; } else if (dbt.Equals("int")) { dbtype = "mssql"; } }
private void cGrid_RowHeaderMouseClick(object sender, DataGridViewCellMouseEventArgs e) { // get gradebook stuff DataTable dt = BbQuery.getGradebookDetail(cGrid.Rows[e.RowIndex].Cells["PK1"].Value.ToString(), dmc.origUrl, dmc.token); // present in second grid gGrid.DataSource = dt; }
public LoginMobile() { InitializeComponent(); authUrl = BbQuery.getBbLoginUrl(); Uri LoginUrl = new Uri(BbQuery.BbUrl); loginUrl = LoginUrl.Scheme + "://" + LoginUrl.Host + ":" + LoginUrl.Port + loginStem; }
private void cGrid_RowHeaderMouseClick(object sender, DataGridViewCellMouseEventArgs e) { // fill aGrid with clinical forms course_pk = cGrid.Rows[e.RowIndex].Cells["PK1"].Value.ToString(); DataTable dt = BbQuery.getGradebookAssessments(cGrid.Rows[e.RowIndex].Cells["PK1"].Value.ToString(), dmc.origUrl, dmc.token); aGrid.DataSource = dt; }
public LoginX() { InitializeComponent(); ServicePointManager.ServerCertificateValidationCallback = new RemoteCertificateValidationCallback(ValidateServerCertificate); authUrl = BbQuery.getBbLoginUrl(); bw = new BackgroundWorker(); bw.DoWork += new DoWorkEventHandler(bw_DoWork); bw.RunWorkerCompleted += new RunWorkerCompletedEventHandler(bw_RunWorkerCompleted); }
private void btnFillCMS_Click(object sender, EventArgs e) { Cursor.Current = Cursors.WaitCursor; int adds = BbQuery.updateCMSCatLibrary(cats, dmc.isOracle, dmc.origUrl, dmc.token); lbAdds.Text = adds.ToString(); Cursor.Current = Cursors.Default; Application.DoEvents(); }
private void catsGrid_RowHeaderMouseClick(object sender, DataGridViewCellMouseEventArgs e) { DataTable items = BbQuery.getCMSCatsByDescriptionDetails(catsGrid.Rows[e.RowIndex].Cells["Category"].Value.ToString(), dmc.origUrl, dmc.token); items.TableName = "items"; // present in second grid itemsGrid.DataSource = items; }
public LoginXP() { InitializeComponent(); ServicePointManager.ServerCertificateValidationCallback = new RemoteCertificateValidationCallback(ValidateServerCertificate); authUrl = BbQuery.getBbLoginUrl(); authUrl_2 = BbQuery.getBbLoginUrl2(); authUrl_sha = authUrl_2.Replace("auth_2", "auth_sha"); }
private void btnGetCourses_Click(object sender, EventArgs e) { if (dmc.token == null) { dmc.token = dmc.getToken(); } DataTable courses = BbQuery.GetEACSpecialCourses("NU-", dmc.origUrl, dmc.token); cGrid.DataSource = courses; }
private void btnGo_Click(object sender, EventArgs e) { if (!String.IsNullOrEmpty(tbData.Text)) { tbMemo.AppendText(BbQuery.getStringFromData(tbData.Text)); } else { MessageBox.Show("Need some data."); } }
private void Attempts_Load(object sender, EventArgs e) { dmc = (DMClient)this.Tag; DataTable dt = BbQuery.getAttempts(course_pk, dmc.origUrl, dmc.token); // atGrid.AutoGenerateColumns = false; atGrid.AutoResizeColumns(DataGridViewAutoSizeColumnsMode.DisplayedCells); atGrid.DataSource = dt; atGrid.Columns["attempt_date"].DefaultCellStyle.Format = "d"; atGrid.Columns["score"].DefaultCellStyle.Format = "N2"; atGrid.Columns["score"].ValueType = typeof(Single); }
private void btnFillCourses_Click(object sender, EventArgs e) { DateTime fDate = DateTime.Now.AddYears(-1); string fd = fDate.ToString("yyyy-MM-dd"); fd = "{d '" + fd + "'}"; if (dmc.token == null) { dmc.token = dmc.getToken(); } DataTable courses = BbQuery.GetRecentCourses(fd, dmc.origUrl, dmc.token); cGrid.DataSource = courses; }
public string getToken() { string retvalue = null; string url = BbQuery.getBbCheckUrl(); string tokenString = getResponse(url); if (tokenString.Split('=').Length > 1) { string[] tokens = tokenString.Split('='); retvalue = tokens[1].Trim(); this.token = retvalue; } else { retvalue = tokenString; } return(retvalue); }
/*if (ds.Tables.Count > 0) * { * string name = ""; * string firstname = ""; * string lastname = ""; * string username = ""; * if (ds.Tables.Contains("user")) * { * DataTable user = ds.Tables["user"]; * id = Convert.ToInt32(user.Rows[0]["id"]); * firstname = user.Rows[0]["firstname"].ToString(); * lastname = user.Rows[0]["lastname"].ToString(); * name = user.Rows[0]["firstname"].ToString() + " " + user.Rows[0]["lastname"]; * username = user.Rows[0]["username"].ToString(); * * } * if (!firstname.Equals("") && !lastname.Equals("") * && (!lastname.ToUpper().Equals("GUEST")) && (!username.ToUpper().Equals("GUEST"))) * { * * retValue = true; * BbQuery.BbLoginString = name + " logged in."; * BbQuery.BbLoggedInName = name; * BbQuery.BbloggedIn = true; * BbQuery.BbInstructor_id = id; * BbQuery.BbUsername = username; * } * }*/ private bool Check(string user_id, string session_id) { bool retValue = false; BbQuery.getBbParams(); user_id = user_id.ToUpper(); StringBuilder sb = new StringBuilder(); sb.Append("select u.pk1 as id, u.firstname, u.lastname,u.user_id as username "); sb.Append(" from sessions s "); sb.Append(" inner join users u on u.user_id = s.user_id "); sb.Append(" where upper(s.user_id) = '" + user_id + "' and s.md5 = '" + session_id + "' "); RequesterAsync rr = new RequesterAsync(sb.ToString(), BbQuery.BbUrl, BbQuery.BbToken, true); DataTable user = rr.execute(); if (user != null && user.Rows.Count > 0) { string name = ""; string firstname = ""; string lastname = ""; string username = ""; id = Convert.ToInt32(user.Rows[0]["id"]); firstname = user.Rows[0]["firstname"].ToString(); lastname = user.Rows[0]["lastname"].ToString(); name = user.Rows[0]["firstname"].ToString() + " " + user.Rows[0]["lastname"]; username = user.Rows[0]["username"].ToString(); if (!firstname.Equals("") && !lastname.Equals("") && (!lastname.ToUpper().Equals("GUEST")) && (!username.ToUpper().Equals("GUEST"))) { retValue = true; BbQuery.BbLoginString = name + " logged in."; BbQuery.BbLoggedInName = name; BbQuery.BbloggedIn = true; BbQuery.BbInstructor_id = id; BbQuery.BbUsername = username; } } return(retValue); }
private void qGrid_RowHeaderMouseClick(object sender, DataGridViewCellMouseEventArgs e) { string theQpk1 = qGrid.Rows[e.RowIndex].Cells["QPK1"].Value.ToString(); string theQuestion = qGrid.Rows[e.RowIndex].Cells["Question"].Value.ToString(); string path = dmc.origUrl.Substring(0, dmc.origUrl.LastIndexOf('/')); path = path + "/" + BbQuery.BbSpecialFunctionsUrl; Cursor.Current = Cursors.WaitCursor; if (BbQuery.UpdateData(course_pk, theQpk1, theQuestion, path, dmc.origUrl, dmc.token)) { DataTable dt = BbQuery.getOneAssessment(theQpk1, dmc.origUrl, dmc.token); object[] vs = new object[dt.Columns.Count]; for (int i = 0; i < dt.Columns.Count; i++) { vs[i] = dt.Rows[0][i].ToString(); } qGrid.Rows[e.RowIndex].SetValues(vs); } Cursor.Current = Cursors.Default; }
private void btnGetPreceptors_Click(object sender, EventArgs e) { preceptors = BbQuery.getPreceptors(oledbConnection); pSource1.DataSource = preceptors; pGrid.DataSource = pSource1; pNav1.BindingSource = pSource1; btnCheckThem = new Button(); btnCheckThem.Image = Properties.Resources.undo_16; btnCheckThem.Location = new System.Drawing.Point(pGrid.RowHeadersWidth, 0); btnCheckThem.Name = "btnCheckThem"; btnCheckThem.Size = new System.Drawing.Size(new Point(pGrid.Columns[0].HeaderCell.Size.Width, pGrid.Columns[0].HeaderCell.Size.Height)); btnCheckThem.TabIndex = 3; btnCheckThem.UseVisualStyleBackColor = true; btnCheckThem.Click += new EventHandler(btnCheckThem_Click); pGrid.Controls.Add(btnCheckThem); pGrid.Columns["user_pk"].ReadOnly = true; pGrid.Columns["user_id"].ReadOnly = true; pGrid.Columns["dtcreated"].ReadOnly = true; //pGrid.Columns["check"] = new DataGridViewCheckBoxColumn(); }
private void itemsGrid_RowHeaderMouseClick(object sender, DataGridViewCellMouseEventArgs e) { XElement node = BbQuery.getQData(itemsGrid.Rows[e.RowIndex].Cells["qpk1"].Value.ToString(), dmc.origUrl, dmc.token); XElement el1 = node.XPathSelectElement(BbQuery.QuestionText); XElement el2 = node.XPathSelectElement(BbQuery.QuestionType); if (el1 != null) { MessageBox.Show(Utilities.StripTags(el1.Value), el2.Value); } else { MessageBox.Show("Null"); } //StringBuilder sb = new StringBuilder(); //StringWriter sw = new StringWriter(sb); //node.Save(sw); //MessageBox.Show(sb.ToString()); //sw.Close(); }
public static multipleChoiceItem fromExisting(string BbUrl, string token, int qdpk1, DataTable students) { bool doHex = false; DataTable theData; string theXml = null; int row = 0; multipleChoiceItem retValue = null; multipleChoiceItem mc = null; StringBuilder sql = new StringBuilder(); sql.Append("select qd.data "); sql.Append("from qti_asi_data qd "); sql.Append(" where qd.pk1 = " + qdpk1.ToString()); RequesterAsync rr = new RequesterAsync(sql.ToString(), BbUrl, token, true); theData = rr.execute(); if (theData != null && !theData.TableName.Equals("error")) { string data = theData.Rows[0]["data"].ToString(); if (!data.StartsWith("P")) { doHex = true; } theXml = BbQuery.getStringFromData(data); } if (!String.IsNullOrEmpty(theXml)) { theXml = theXml.Replace("<item ", "<multipleChoiceItem ").Replace("</item>", "</multipleChoiceItem>"); mc = multipleChoiceItem.Parse(theXml); } var names = mc.presentation.flow.flow.Where(t => [email protected]("RESPONSE_BLOCK")); foreach (var n in names) { //n.response_lid.render_choice.flow_label. var labels = n.response_lid.render_choice.flow_label; foreach (var l in labels) { string stuName = students.Rows[row]["lastname"].ToString() + ", " + students.Rows[row]["firstname"].ToString() + " (" + students.Rows[row]["user_id"].ToString() + ")"; row++; l.response_label.flow_mat.material.mat_extension.mat_formattedtext.TypedValue = stuName; l.response_label.ident = QTIUtility.Utilities.Md5HashUtilityUTF8(stuName).ToLower(); } multipleChoiceItem.presentationLocalType.flowLocalType.flowLocalType1.response_lidLocalType.render_choiceLocalType.flow_labelLocalType m = new multipleChoiceItem.presentationLocalType.flowLocalType.flowLocalType1.response_lidLocalType.render_choiceLocalType.flow_labelLocalType(); if (row < students.Rows.Count) { // multipleChoiceItem.presentationLocalType.flowLocalType.flowLocalType1.response_lidLocalType.render_choiceLocalType.flow_labelLocalType m = new multipleChoiceItem.presentationLocalType.flowLocalType.flowLocalType1.response_lidLocalType.render_choiceLocalType.flow_labelLocalType(); string stuName = students.Rows[row]["lastname"].ToString() + ", " + students.Rows[row]["firstname"].ToString() + " (" + students.Rows[row]["user_id"].ToString() + ")"; m.@class = "Block"; m.response_label = new multipleChoiceItem.presentationLocalType.flowLocalType.flowLocalType1.response_lidLocalType.render_choiceLocalType.flow_labelLocalType.response_labelLocalType(); m.response_label.ident = QTIUtility.Utilities.Md5HashUtilityUTF8(stuName).ToLower(); m.response_label.shuffle = "Yes"; m.response_label.rarea = "Ellipse"; m.response_label.rrange = "Exact"; m.response_label.flow_mat = new multipleChoiceItem.presentationLocalType.flowLocalType.flowLocalType1.response_lidLocalType.render_choiceLocalType.flow_labelLocalType.response_labelLocalType.flow_matLocalType(); m.response_label.flow_mat.@class = "FORMATTED_TEXT_BLOCK"; m.response_label.flow_mat.material = new multipleChoiceItem.presentationLocalType.flowLocalType.flowLocalType1.response_lidLocalType.render_choiceLocalType.flow_labelLocalType.response_labelLocalType.flow_matLocalType.materialLocalType(); m.response_label.flow_mat.material.mat_extension = new multipleChoiceItem.presentationLocalType.flowLocalType.flowLocalType1.response_lidLocalType.render_choiceLocalType.flow_labelLocalType.response_labelLocalType.flow_matLocalType.materialLocalType.mat_extensionLocalType(); m.response_label.flow_mat.material.mat_extension.mat_formattedtext = new multipleChoiceItem.presentationLocalType.flowLocalType.flowLocalType1.response_lidLocalType.render_choiceLocalType.flow_labelLocalType.response_labelLocalType.flow_matLocalType.materialLocalType.mat_extensionLocalType.mat_formattedtextLocalType(); m.response_label.flow_mat.material.mat_extension.mat_formattedtext.TypedValue = stuName; //<mat_formattedtext type="HTML">Boxer, Barbara (barb)</mat_formattedtext> m.response_label.flow_mat.material.mat_extension.mat_formattedtext.type = "HTML"; n.response_lid.render_choice.flow_label.Add(m); row++; } while (row < students.Rows.Count) { multipleChoiceItem.presentationLocalType.flowLocalType.flowLocalType1.response_lidLocalType.render_choiceLocalType.flow_labelLocalType mcc = (multipleChoiceItem.presentationLocalType.flowLocalType.flowLocalType1.response_lidLocalType.render_choiceLocalType.flow_labelLocalType)m.Clone(); string stuName = students.Rows[row]["lastname"].ToString() + ", " + students.Rows[row]["firstname"].ToString() + " (" + students.Rows[row]["user_id"].ToString() + ")"; mcc.response_label.ident = QTIUtility.Utilities.Md5HashUtilityUTF8(stuName).ToLower(); n.response_lid.render_choice.flow_label.Add(mcc); row++; } } row = 0; var vcorrect = mc.resprocessing.respcondition.Where(t => t.title.Equals("correct")).FirstOrDefault().conditionvar.varequal; string thisName = students.Rows[row]["lastname"].ToString() + ", " + students.Rows[row]["firstname"].ToString() + " (" + students.Rows[row]["user_id"].ToString() + ")"; vcorrect.TypedValue = QTIUtility.Utilities.Md5HashUtilityUTF8(thisName).ToLower(); vcorrect.respident = "response"; //<respcondition title="correct"> var resps = mc.resprocessing.respcondition.Where(t => t.conditionvar != null && String.IsNullOrEmpty(t.title)); /*<respcondition title="correct"> * <conditionvar> * <varequal respident="response" case="No">0e1fffe32c27424094f9e85c12c55bfb</varequal> * </conditionvar> * <setvar variablename="SCORE" action="Set">SCORE.max</setvar> * <displayfeedback linkrefid="correct" feedbacktype="Response"/> * </respcondition>*/ /*<respcondition> * <conditionvar> * <varequal respident="55394393588c4bb5927a67b4f0846048" case="No"/> * </conditionvar> * <setvar variablename="SCORE" action="Set">100</setvar> * <displayfeedback linkrefid="55394393588c4bb5927a67b4f0846048" feedbacktype="Response"/> * </respcondition>*/ foreach (var r in resps) { if (r.conditionvar.varequal == null) { continue; } string stuName = students.Rows[row]["lastname"].ToString() + ", " + students.Rows[row]["firstname"].ToString() + " (" + students.Rows[row]["user_id"].ToString() + ")"; r.conditionvar.varequal.respident = QTIUtility.Utilities.Md5HashUtilityUTF8(stuName).ToLower(); r.displayfeedback.linkrefid = QTIUtility.Utilities.Md5HashUtilityUTF8(stuName).ToLower(); row++; } while (row < students.Rows.Count) { string stuName = students.Rows[row]["lastname"].ToString() + ", " + students.Rows[row]["firstname"].ToString() + " (" + students.Rows[row]["user_id"].ToString() + ")"; multipleChoiceItem.resprocessingLocalType.respconditionLocalType res = new multipleChoiceItem.resprocessingLocalType.respconditionLocalType(); res.conditionvar = new multipleChoiceItem.resprocessingLocalType.respconditionLocalType.conditionvarLocalType(); res.conditionvar.varequal = new multipleChoiceItem.resprocessingLocalType.respconditionLocalType.conditionvarLocalType.varequalLocalType(); res.conditionvar.varequal.respident = QTIUtility.Utilities.Md5HashUtilityUTF8(stuName).ToLower(); res.conditionvar.varequal.@case = "No"; res.setvar = new multipleChoiceItem.resprocessingLocalType.respconditionLocalType.setvarLocalType(); res.setvar.variablename = "SCORE"; res.setvar.action = "Set"; res.setvar.TypedValue = "0.0"; res.displayfeedback = new multipleChoiceItem.resprocessingLocalType.respconditionLocalType.displayfeedbackLocalType(); res.displayfeedback.linkrefid = QTIUtility.Utilities.Md5HashUtilityUTF8(stuName).ToLower(); res.displayfeedback.feedbacktype = "Response"; mc.resprocessing.respcondition.Add(res); row++; } row = 0; /*should have * <itemfeedback ident="correct" view="All"> * <flow_mat class="Block"> * <flow_mat class="FORMATTED_TEXT_BLOCK"> * <material> * <mat_extension> * <mat_formattedtext type="HTML"/> * </mat_extension> * </material> * </flow_mat> * </flow_mat> * </itemfeedback> * <itemfeedback ident="incorrect" view="All"> * <flow_mat class="Block"> * <flow_mat class="FORMATTED_TEXT_BLOCK"> * <material> * <mat_extension> * <mat_formattedtext type="HTML"/> * </mat_extension> * </material> * </flow_mat> * </flow_mat> * </itemfeedback> */ var itf = mc.itemfeedback.Where(t => !t.ident.Contains("correct")); foreach (var itp in itf) { string stuName = students.Rows[row]["lastname"].ToString() + ", " + students.Rows[row]["firstname"].ToString() + " (" + students.Rows[row]["user_id"].ToString() + ")"; itp.ident = QTIUtility.Utilities.Md5HashUtilityUTF8(stuName).ToLower(); row++; } /* * <itemfeedback ident="0e1fffe32c27424094f9e85c12c55bfb" view="All"> * <solution view="All" feedbackstyle="Complete"> * <solutionmaterial> * <flow_mat class="Block"> * <flow_mat class="FORMATTED_TEXT_BLOCK"> * <material> * <mat_extension> * <mat_formattedtext type="HTML"/> * </mat_extension> * </material> * </flow_mat> * </flow_mat> * </solutionmaterial> * </solution> * </itemfeedback> * * <itemfeedback ident="55394393588c4bb5927a67b4f0846048" view="All"> * <solution view="All" feedbackstyle="Complete"> * <solutionmaterial> * <flow_mat class="Block"> * <flow_mat class="FORMATTED_TEXT_BLOCK"> * <material> * <mat_extension> * <mat_formattedtext type="HTML"/> * </mat_extension> * </material> * </flow_mat> * </flow_mat> * </solutionmaterial> * </solution> * </itemfeedback>*/ multipleChoiceItem.itemfeedbackLocalType it = null; if (row < students.Rows.Count) { it = new multipleChoiceItem.itemfeedbackLocalType(); it.view = "All"; string stuName = students.Rows[row]["lastname"].ToString() + ", " + students.Rows[row]["firstname"].ToString() + " (" + students.Rows[row]["user_id"].ToString() + ")"; it.ident = QTIUtility.Utilities.Md5HashUtilityUTF8(stuName).ToLower(); it.solution = new multipleChoiceItem.itemfeedbackLocalType.solutionLocalType(); it.solution.view = "All"; it.solution.feedbackstyle = "Complete"; it.solution.solutionmaterial = new multipleChoiceItem.itemfeedbackLocalType.solutionLocalType.solutionmaterialLocalType(); it.solution.solutionmaterial.flow_mat = new multipleChoiceItem.itemfeedbackLocalType.solutionLocalType.solutionmaterialLocalType.flow_matLocalType(); it.solution.solutionmaterial.flow_mat.@class = "Block"; it.solution.solutionmaterial.flow_mat.flow_mat = new multipleChoiceItem.itemfeedbackLocalType.solutionLocalType.solutionmaterialLocalType.flow_matLocalType.flow_matLocalType1(); it.solution.solutionmaterial.flow_mat.flow_mat.@class = "FORMATTED_TEXT_BLOCK"; it.solution.solutionmaterial.flow_mat.flow_mat.material = new multipleChoiceItem.itemfeedbackLocalType.solutionLocalType.solutionmaterialLocalType.flow_matLocalType.flow_matLocalType1.materialLocalType(); it.solution.solutionmaterial.flow_mat.flow_mat.material.mat_extension = new multipleChoiceItem.itemfeedbackLocalType.solutionLocalType.solutionmaterialLocalType.flow_matLocalType.flow_matLocalType1.materialLocalType.mat_extensionLocalType(); it.solution.solutionmaterial.flow_mat.flow_mat.material.mat_extension.mat_formattedtext = new multipleChoiceItem.itemfeedbackLocalType.solutionLocalType.solutionmaterialLocalType.flow_matLocalType.flow_matLocalType1.materialLocalType.mat_extensionLocalType.mat_formattedtextLocalType(); it.solution.solutionmaterial.flow_mat.flow_mat.material.mat_extension.mat_formattedtext.type = "HTML"; mc.itemfeedback.Add(it); row++; } while (row < students.Rows.Count) { multipleChoiceItem.itemfeedbackLocalType itc = (multipleChoiceItem.itemfeedbackLocalType)it.Clone(); string stuName = students.Rows[row]["lastname"].ToString() + ", " + students.Rows[row]["firstname"].ToString() + " (" + students.Rows[row]["user_id"].ToString() + ")"; itc.ident = QTIUtility.Utilities.Md5HashUtilityUTF8(stuName).ToLower(); mc.itemfeedback.Add(itc); row++; } StringBuilder xm = new StringBuilder(); XmlWriter xr = XmlWriter.Create(xm); mc.Save(xr); xr.Flush(); xr.Close(); string ix = xm.ToString(); ix = ix.Replace("<multipleChoiceItem ", "<item ").Replace("</multipleChoiceItem>", "</item>"); ix = ix.Replace("<?xml version=\"1.0\" encoding=\"utf-16\"?>", "<?xml version=\"1.0\" encoding=\"UTF-8\"?>"); //xm.Length = 0; //xm.Append(ix); string xmf = String.Empty; byte[] b = UTF8Encoding.UTF8.GetBytes(ix); if (doHex) { xmf = BitConverter.ToString(b).Replace("-", string.Empty); } else { xmf = Convert.ToBase64String(b); } sql.Length = 0; sql.Append("update qti_asi_data set "); sql.Append("data =cast('" + ix + "' AS varbinary(max))"); sql.Append(" where pk1 = " + qdpk1.ToString()); string theSql = sql.ToString(); rr = new RequesterAsync(theSql, BbUrl, token, true); theData = rr.execute(); retValue = mc; return(retValue); }
private void btnGo_Click(object sender, EventArgs e) { if (string.IsNullOrEmpty(tbInput.Text) || string.IsNullOrEmpty(tbPattern.Text)) { MessageBox.Show("Fill input boxes."); return; } // getCQCourses(tbInput.Text.Trim()) tbMemo.AppendText(BbQuery.getCQCourses(tbInput.Text.Trim()) + "\n\n"); try { Regex rgx = new Regex(tbPattern.Text.Trim(), RegexOptions.IgnoreCase); MatchCollection mc = rgx.Matches(tbInput.Text.Trim()); tbMemo.AppendText(tbInput.Text.Trim() + " yields " + mc.Count.ToString() + " matches\n"); tbMemo.AppendText("school: " + mc[0].Groups[1].Captures[0].Value + "\n"); string schl = mc[0].Groups[1].Captures[0].Value; int l = mc[0].Groups.Count - 2; tbMemo.AppendText("tail: " + mc[0].Groups[l + 1].Captures[0].Value + "\n"); string tail = mc[0].Groups[l + 1].Captures[0].Value; string groups = mc[0].Groups.Count.ToString(); string[] sections = new string[mc[0].Groups[l].Captures.Count]; for (int z = 0; z < mc[0].Groups[l].Captures.Count; z++) { sections[z] = mc[0].Groups[l].Captures[z].Value; } tbMemo.AppendText("Groups: " + groups + "\n"); StringBuilder sb = new StringBuilder(); string[] delim = { "-" }; List <string> doubles = new List <string>(); List <string> singles = new List <string>(); for (int g = 0; g < mc[0].Groups.Count; g++) { // tbMemo.AppendText("g: " +g.ToString()+" "+ mc[0].Groups[g].Value + "\n"); for (int c = 0; c < mc[0].Groups[g].Captures.Count; c++) { Capture cc = mc[0].Groups[g].Captures[c]; tbMemo.AppendText("g: " + g.ToString() + " c: " + c.ToString() + " " + cc.Value + " " + cc.Index.ToString() + " " + cc.Length.ToString() + "\n"); if (g >= 2 && g < (mc[0].Groups.Count - 2)) { if ((cc.Value.Split('-')).Length > 2) { if (!doubles.Contains(cc.Value)) { doubles.Add(cc.Value); tbMemo.AppendText("double: " + cc.Value + "\n"); } } else { if (!singles.Contains(cc.Value)) { singles.Add(cc.Value); tbMemo.AppendText("single: " + cc.Value + "\n"); } } } } } foreach (string d in doubles) { foreach (string s in sections) { sb.Append("," + schl + d + s + tail); } } for (int p = 0; p < singles.Count - 1; p++) { for (int q = 1; q < singles.Count; q++) { if (p != q) { if (!doubles.Contains(singles[p] + "-" + singles[q])) { foreach (string s in sections) { sb.Append("," + schl + singles[p] + "-" + singles[q] + s + tail); } } } } } string bigCourseid = sb.ToString(); tbMemo.AppendText(bigCourseid + "\n"); } catch (Exception ex) { tbMemo.AppendText(ex.Message + "\n"); } }
private void btnEnroll_Click(object sender, EventArgs e) { bool isChecked = false; DataTable enroll = ((DataTable)((BindingSource)pGrid.DataSource).DataSource).Clone(); enroll.Columns.Add("course_pk", typeof(string)); for (int i = 0; i < pGrid.Rows.Count; i++) { if ((pGrid.Rows[i].Cells[0] as DataGridViewCheckBoxCell).Value != null && ((bool)(pGrid.Rows[i].Cells[0] as DataGridViewCheckBoxCell).Value == true)) { isChecked = true; DataRow en = enroll.NewRow(); en.ItemArray = ((DataRowView)pGrid.Rows[i].DataBoundItem).Row.ItemArray; en["course_pk"] = course_pk; enroll.Rows.Add(en); } } if (!isChecked) { MessageBox.Show("No preceptors checked."); return; } DataSet enrollment = new DataSet("enrollment"); enroll.TableName = "enrollee"; enrollment.Tables.Add(enroll); StringBuilder sb = new StringBuilder(); XmlWriterSettings ws = new XmlWriterSettings(); ws.Indent = false; ws.NewLineHandling = NewLineHandling.Replace; ws.NewLineChars = ""; XmlWriter xw = XmlWriter.Create(sb, ws); string tableName = enroll.TableName; enrollment.WriteXml(xw); xw.Close(); string deploys = sb.ToString(); // get enroll url string path = dmc.origUrl.Substring(0, dmc.origUrl.LastIndexOf('/')); path = path + "/" + BbQuery.BbSpecialFunctionsUrl; DataTable enrollees = BbQuery.enroll(path, deploys); if (preceptors.PrimaryKey == null) { preceptors.PrimaryKey = new DataColumn[] { preceptors.Columns["localId"] }; } foreach (DataRow en in enrollees.Rows) { DataRow pr = preceptors.Select("localid = " + en["localid"].ToString())[0]; if (pr != null) { pr["user_id"] = en["user_id"]; pr["user_pk"] = en["user_pk"]; pr["dtcreated"] = en["dtcreated"]; } } //Update underlying datasource BbQuery.updatePreceptors(oledbConnection, preceptors); pGrid.Refresh(); return; }
public Login() { InitializeComponent(); ServicePointManager.ServerCertificateValidationCallback = new RemoteCertificateValidationCallback(ValidateServerCertificate); authUrl = BbQuery.getBbLoginUrl(); }