protected void SetUpStudents() { if (Request.IsMobileDevice()) { mfbIlOfflineEndorsements.Columns = 1; } mfuOfflineEndorsements.Class = MyFlightbook.Image.MFBImageInfo.ImageClass.OfflineEndorsement; mfbIlOfflineEndorsements.Key = Page.User.Identity.Name; mfbIlOfflineEndorsements.Refresh(); byte[] rgbDefaultScribble = CFIStudentMap.DefaultScribbleForInstructor(m_pf); mvDefaultSig.SetActiveView(vwCurrentSig); if (rgbDefaultScribble == null || rgbDefaultScribble.Length == 0) { lnkEditDefaultSig.Text = Resources.LocalizedText.StudentSigningDefaultScribbleAdd; imgCurrSig.Src = string.Empty; } else { imgCurrSig.Src = ScribbleImage.DataLinkForByteArray(rgbDefaultScribble); } Profile pf = Profile.GetUser(Page.User.Identity.Name); pnlCertificate.Visible = String.IsNullOrEmpty(pf.Certificate); txtCertificate.Text = pf.Certificate; mfbTypeInDateCFIExpiration.Date = pf.CertificateExpiration; mfbScribbleSignature.WatermarkRef = ResolveClientUrl("~/images/rubberstamp.png"); }
protected void btnSaveDefaultSig_Click(object sender, EventArgs e) { byte[] rgbSig = mfbScribbleSignature.Base64Data(); CFIStudentMap.SetDefaultScribbleForInstructor(m_pf, rgbSig); imgCurrSig.Src = ScribbleImage.DataLinkForByteArray(rgbSig); imgCurrSig.Visible = (rgbSig.Length != 0); lnkEditDefaultSig.Text = (rgbSig.Length == 0) ? Resources.LocalizedText.StudentSigningDefaultScribbleAdd : Resources.LocalizedText.StudentSigningDefaultScribbleEdit; mvDefaultSig.SetActiveView(vwCurrentSig); }
protected void valSignature_ServerValidate(object source, ServerValidateEventArgs args) { if (args == null) { throw new ArgumentNullException(nameof(args)); } if (Enabled && !ScribbleImage.IsValidDataURL(hdnSigData.Value)) { args.IsValid = false; } }
public byte[] Base64Data() { byte[] rgbSignature; try { rgbSignature = ScribbleImage.FromDataLinkURL(hdnSigData.Value); } catch (MyFlightbookException ex) { lblSigErr.Text = ex.Message; return(null); } return(rgbSignature); }