Пример #1
0
        private void BtnSave_Click(object sender, EventArgs e)
        {
            SignatureImage = sign_pad.GetImage();



            //byte[] b = new byte[(long)f.Length()];

            //f.ReadFully(b);

            //Java.IO.File file;


            //Toast.MakeText(Activity, "Signature Saved", ToastLength.Short).Show();
            //ByteBuffer buffer = ByteBuffer.Allocate(SignatureImage.ByteCount);
            //SignatureImage.CopyPixelsToBuffer(buffer);
            //buffer.Rewind();



            ////Byte array signature
            //IntPtr classHandle = JNIEnv.FindClass("java/nio/ByteBuffer");
            //IntPtr methodId = JNIEnv.GetMethodID(classHandle, "array", "()[B");
            //IntPtr resultHandle = JNIEnv.CallObjectMethod(buffer.Handle, methodId);
            //byte[] result = JNIEnv.GetArray<byte>(resultHandle);
            //JNIEnv.DeleteLocalRef(resultHandle);

            try
            {
                int byteSize = SignatureImage.RowBytes * SignatureImage.Height;
                int bytes    = SignatureImage.ByteCount;

                MemoryStream stream = new MemoryStream();
                SignatureImage.Compress(Bitmap.CompressFormat.Png, 0, stream);
                byte[] bitmapData = stream.ToArray();


                bool uploadsign = SQL_Functions.uploadSignature(bitmapData);
                Toast.MakeText(Activity, "Signature Uploaded", ToastLength.Short).Show();
            }
            catch (Exception ex)
            {
                new Android.Support.V7.App.AlertDialog.Builder(Activity).SetTitle("Indigent App Error").SetMessage("Upload failed: " + ex.Message + "\n \nPlease try again later").SetCancelable(true).Show();
            }


            Dismiss();
        }
Пример #2
0
        //public override void OnActivityResult(int requestCode, [GeneratedEnum] Result resultCode, Intent data)
        //{
        //    if (requestCode == FILECHOOSER_RESULTCODE)
        //    {
        //        if (null == mUploadMessage)
        //            return;
        //        Java.Lang.Object result = data == null || resultCode != Result.Ok
        //            ? null
        //            : data.Data;
        //        mUploadMessage.OnReceiveValue(result);
        //        mUploadMessage = null;
        //    }
        //}

        //public void StartActivity(Intent intent, int requestCode, Action<int, Result, Intent> resultCallback)
        //{
        //    _resultCallback = resultCallback;
        //    StartActivityForResult(intent, requestCode);
        //}

        private void DbtnUpload_Click(object sender, EventArgs e)
        {
            Toast.MakeText(Activity, "Uploading " + filename, ToastLength.Long).Show();

            try
            {
                var comment = txtComments.Text;
                // WcfService_Indigent_Final.Service1 indigentWebService = new WcfService_Indigent_Final.Service1();

                //indigentWebService.Indigent_uploadFile(0,"", SQL_Functions.RefNumber, filename, filepath, filetype, txtComments.Text,"", spnType.SelectedItem.ToString(), spnName.SelectedItem.ToString());

                SQL_Functions.uploadFile(SQL_Functions.RefNumber, filename, filetype, comment, spnType.SelectedItem.ToString());

                Toast.MakeText(Activity, "File:" + filename + " uploaded Sucessfully", ToastLength.Long).Show();

                btnUploadDialog.Text    = "File Uploaded";
                btnUploadDialog.Enabled = false;
                //}
            }
            catch (Exception ex)
            {
                new AlertDialog.Builder(Activity).SetTitle("Indigent App Error").SetMessage("Upload failed: " + ex.Message + "\n \nPlease try again later").SetCancelable(true).Show();
            }
        }
Пример #3
0
        public override void OnPageFinished(WebView view, string url)
        {
            base.OnPageFinished(view, url);

            if (url.Contains("#"))
            {
                fileID = url.ToString().Split('#')[1];

                Toast.MakeText(_context, "Downloading File ", ToastLength.Short).Show();

                //ThreadPool.QueueUserWorkItem(o => downloadThread());

                downloadFile(fileID);

                //Thread thread = new Thread(downloadThread);
                // thread.Start();

                //downloadThread();

                Toast.MakeText(_context, "File downloaded ", ToastLength.Short).Show();
            }


            if (view.Url != MainActivity.uriLOGIN && view.Url != "ABOUT:BLANK")
            {
                MainActivity.navview.Visibility = ViewStates.Visible;
                MainActivity.toolb.Visibility   = ViewStates.Visible;
                MainActivity.drawerLayout.SetDrawerLockMode(DrawerLayout.LockModeUnlocked);
                //MainActivity._bottomBar.Visibility = ViewStates.Visible;
            }
            else
            {
                MainActivity.navview.Visibility = ViewStates.Gone;
                MainActivity.drawerLayout.SetDrawerLockMode(DrawerLayout.LockModeLockedClosed);
                MainActivity.toolb.Visibility = ViewStates.Gone;
                // MainActivity._bottomBar.Visibility = ViewStates.Gone;
            }

            if (loadError == true)
            {
                MainActivity.navview.Visibility = ViewStates.Gone;
                MainActivity.drawerLayout.SetDrawerLockMode(DrawerLayout.LockModeLockedClosed);
                // MainActivity._bottomBar.Visibility = ViewStates.Gone;
                MainActivity.toolb.Visibility = ViewStates.Gone;
                Snackbar.Make(MainActivity.drawerLayout, "Please Check your internet connection and Retry again...", Snackbar.LengthIndefinite)
                .SetAction("Retry", (v) => { view.LoadUrl(MainActivity.uriLOGIN); })
                .Show();
            }

            if (view.Url.Contains("http://mtraders.co.za/DataCapturers_Mobile/Register_Applicant.aspx?RefNo=") || view.Url.Contains("http://mtraders.co.za/officer_mobile/Register_page_test2.aspx?RefNo="))
            {
                count++;
                MainActivity.btnUpload.Visibility           = ViewStates.Visible;
                MainActivity.btnDigitalSignature.Visibility = ViewStates.Visible;
                Uri myUri = new Uri(view.Url, UriKind.RelativeOrAbsolute);
                var query = System.Web.HttpUtility.ParseQueryString(myUri.Query);
                SQL_Functions.RefNumber = query.Get("RefNo");



                if (count == 1)
                {
                    progress.SetMessage("Initialising Database Connection");
                    bool databaseConnection  = SQL_Functions.intialiseApplicant();
                    bool initialiseOccupants = SQL_Functions.intialiseOccupant();
                    if (databaseConnection == true && initialiseOccupants == true)
                    {
                        Toast.MakeText(_context, "Applicants/Occupants Initialized", ToastLength.Long).Show();
                    }
                    else
                    {
                        Toast.MakeText(_context, "Error Occured during database Connection", ToastLength.Long).Show();
                    }
                }
            }
            else
            {
                count = 0;
                MainActivity.btnUpload.Visibility           = ViewStates.Gone;
                MainActivity.btnDigitalSignature.Visibility = ViewStates.Gone;
            }

            progress.Dismiss();
        }
Пример #4
0
        public bool downloadFile(string fileid)
        {
            fileByte = null;
            var filename = "";

            System.Net.ServicePointManager.Expect100Continue = false;
            string con_string = SQL_Functions.GetConnectionstring();

            using (SqlConnection conn = new SqlConnection())
            {
                SqlDataReader datareader;
                conn.ConnectionString = con_string;


                SqlCommand command = new SqlCommand("SELECT Name, Data FROM Files WHERE id ='" + fileid.ToString() + "';");
                command.Connection = conn;

                conn.Open();
                command.ExecuteNonQuery();
                datareader = command.ExecuteReader(CommandBehavior.CloseConnection);
                if (datareader.HasRows)
                {
                    while (datareader.Read())
                    {
                        filename = datareader["Name"].ToString();
                        fileByte = (byte[])datareader["Data"];
                    }
                }
                conn.Close();
            }

            var downloadLoc = Android.OS.Environment.GetExternalStoragePublicDirectory(Android.OS.Environment.DirectoryDownloads) + "'\'" + filename;

            Java.IO.File outputFile = new Java.IO.File(downloadLoc);

            try
            {
                if (outputFile.Exists())
                {
                    outputFile.CreateNewFile();
                }
                FileOutputStream outputStream = new FileOutputStream(outputFile);
                outputStream.Write(fileByte);  //write the bytes and im done.

                var localImage = new Java.IO.File(downloadLoc);
                if (localImage.Exists())
                {
                    global::Android.Net.Uri uri = global::Android.Net.Uri.FromFile(localImage);

                    var intent = new Intent(Intent.ActionView, uri);

                    intent.SetAction(Intent.ActionView);
                    //  intent.SetType ("application/pdf");
                    try
                    {
                        intent.SetData(global::Android.Net.Uri.FromFile(localImage));
                        intent.AddFlags(ActivityFlags.NewTask);
                        Android.App.Application.Context.StartActivity(intent);
                    }
                    catch (Exception e)
                    {
                        var msg = e.Message;
                        Toast.MakeText(_context, "Please open the file from the root : " + downloadLoc, ToastLength.Long).Show();
                    }
                }
            }
            catch (Exception ex)
            {
                new AlertDialog.Builder(_context).SetTitle("Indigent App Error").SetMessage("Upload failed: " + ex.Message + "\n \nPlease try again later").SetCancelable(true).Show();
            }



            return(true);
        }