Пример #1
0
        private void GetAndSetExistingProfilePic(CircleImageView profileimg)
        {
            try
            {
                string mStringLoginInfo    = string.Empty;
                string mStringSessionToken = string.Empty;
                try
                {
                    objdb = new DBaseOperations();
                    var lstu = objdb.selectTable();
                    if (lstu != null && lstu.Count > default(int))
                    {
                        var uobj = lstu.FirstOrDefault();
                        if (uobj.Password == " ")
                        {
                            throw new Exception("Please login again");
                        }
                        mStringLoginInfo    = uobj.EmailId;
                        mStringSessionToken = uobj.AuthToken;
                        _profilepicbase64   = uobj.ProfilePicture;
                    }
                }
                catch { }

                if (!string.IsNullOrEmpty(_profilepicbase64))
                {
                    var btmpimg = BitmapHelpers.Base64ToBitmap(_profilepicbase64);
                    profileimg.RecycleBitmap();
                    profileimg.SetImageBitmap(btmpimg);
                }
            }
            catch (Exception ex)
            {
            }
        }
        public override View OnCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState)
        {
            ViewGroup root = (ViewGroup)inflater.Inflate(Resource.Layout.fragment_content_addproduct, null);

            StrictMode.VmPolicy.Builder builder = new StrictMode.VmPolicy.Builder();
            StrictMode.SetVmPolicy(builder.Build());

            txt_lvl_1             = root.FindViewById <TextView>(Resource.Id.txt_lvl_1);
            img_lvl_1             = root.FindViewById <ImageView>(Resource.Id.img_lvl_1);
            img_product_view      = root.FindViewById <ImageView>(Resource.Id.img_product_view);
            txt_ProductName       = root.FindViewById <EditText>(Resource.Id.txt_ProductName);
            btn_show_popup        = root.FindViewById <Button>(Resource.Id.btn_show_popup);
            btn_prd_cancel        = root.FindViewById <Button>(Resource.Id.btn_prd_cancel);
            btn_prd_cancel.Click += (sndr, argus) => Cancel_Product(sndr, argus, this.Activity);
            btn_prd_save          = root.FindViewById <Button>(Resource.Id.btn_prd_save);
            btn_prd_save.Click   += (sndr, argus) => Save_Product(sndr, argus, this.Activity);
            if (IsThereAnAppToTakePictures())
            {
                CreateDirectoryForPictures();
                btn_show_popup.Click += (sndr, argus) => Camera_Clicked(sndr, argus, this.Activity, btn_show_popup);
            }

            try
            {
                if (Arguments != null)
                {
                    if (objSelectedItem == null)
                    {
                        objSelectedItem = new List <ItemPayloadModelWithBase64>();
                    }
                    objSelectedItem = Newtonsoft.Json.JsonConvert.DeserializeObject <List <ItemPayloadModelWithBase64> >(Arguments.GetString("siteparam"));
                    txt_lvl_1.Text  = objSelectedItem[0].ItemName;
                    img_lvl_1.SetImageBitmap(BitmapHelpers.Base64ToBitmap(objSelectedItem[0].ItemIcon));
                }

                if (Build.VERSION.SdkInt >= Build.VERSION_CODES.M)
                {
                    if (Android.Support.V4.Content.ContextCompat.CheckSelfPermission(this.Activity, Manifest.Permission.Camera) != (int)Permission.Granted || Android.Support.V4.Content.ContextCompat.CheckSelfPermission(this.Activity, Manifest.Permission.WriteExternalStorage) != (int)Permission.Granted)
                    {
                        Android.Support.V4.App.ActivityCompat.RequestPermissions(this.Activity, new string[] { Manifest.Permission.Camera, Manifest.Permission.WriteExternalStorage, Manifest.Permission.ReadExternalStorage }, 54);

                        /*FragmentManager.FindFragmentById(Resource.Layout.fragment_content_addproduct).RequestPermissions(new string[]
                         * {
                         *  Manifest.Permission.Camera, Manifest.Permission.WriteExternalStorage,
                         *  Manifest.Permission.ReadExternalStorage
                         * }, 54);*/
                    }
                }
            }
            catch { }

            return(root);
        }
 public void Bind(Message message)
 {
     try
     {
         messageText.Text = message.message;
         timeText.Text    = message.createdAt.ToString("dd MMM hh:mm tt");
         nameText.Text    = message.sender.GoodName;
         if (!string.IsNullOrEmpty(message.sender.ProfilePicture))
         {
             profileImage.SetImageBitmap(BitmapHelpers.Base64ToBitmap(message.sender.ProfilePicture));
         }
         else
         {
             profileImage.SetBackgroundResource(Resource.Drawable.chatbot);
         }
     }
     catch { }
 }
Пример #4
0
        public override View OnCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState)
        {
            ViewGroup root = (ViewGroup)inflater.Inflate(Resource.Layout.fragment_content_addactivity, null);

            txt_main      = root.FindViewById <TextView>(Resource.Id.txt_main);
            txt_item_lvl1 = root.FindViewById <TextView>(Resource.Id.txt_item_lvl1);
            img_item_lvl1 = root.FindViewById <ImageView>(Resource.Id.img_item_lvl1);

            try
            {
                if (Arguments != null)
                {
                    if (objSelectedItem == null)
                    {
                        objSelectedItem = new List <ItemPayloadModelWithBase64>();
                    }
                    objSelectedItem = Newtonsoft.Json.JsonConvert.DeserializeObject <List <ItemPayloadModelWithBase64> >(Arguments.GetString("siteparam"));
                    if (objSelectedItem.FirstOrDefault() != null)
                    {
                        txt_main.Text            = "Selected Category:";
                        img_item_lvl1.Visibility = ViewStates.Visible;
                        txt_item_lvl1.Visibility = ViewStates.Visible;
                        txt_item_lvl1.Text       = objSelectedItem.FirstOrDefault() != null?objSelectedItem.FirstOrDefault().ItemName : "";

                        img_item_lvl1.SetImageBitmap(BitmapHelpers.Base64ToBitmap(objSelectedItem.FirstOrDefault().ItemIcon));
                    }
                    else
                    {
                        txt_main.Text            = "Select Sub-Category:";
                        img_item_lvl1.Visibility = ViewStates.Gone;
                        txt_item_lvl1.Visibility = ViewStates.Gone;
                    }
                }
                else
                {
                    objSelectedItem          = null;
                    txt_main.Text            = "Select Category:";
                    img_item_lvl1.Visibility = ViewStates.Gone;
                    txt_item_lvl1.Visibility = ViewStates.Gone;
                }
            }
            catch (Exception ex) { }

            try
            {
                string mStringLoginInfo    = string.Empty;
                string mStringSessionToken = string.Empty;
                try
                {
                    objdb = new DBaseOperations();
                    var lstu = objdb.selectTable();
                    if (lstu != null && lstu.Count > default(int))
                    {
                        var uobj = lstu.FirstOrDefault();
                        if (uobj.Password == " ")
                        {
                            throw new Exception("Please login again");
                        }
                        mStringLoginInfo    = uobj.EmailId;
                        mStringSessionToken = uobj.AuthToken;
                    }
                }
                catch { }

                if (string.IsNullOrEmpty(mStringSessionToken))
                {
                    throw new Exception("Token does not exists");
                }

                if (objSelectedItem == null || objSelectedItem.Count() <= default(int))
                {
                    var client  = new RestClient(Common.UrlBase);
                    var request = new RestRequest("Product/GetCategoryList", Method.GET);
                    request.AddHeader("Content-Type", "application/json");
                    request.AddHeader("TokenKey", mStringSessionToken);
                    IRestResponse response    = client.Execute(request);
                    var           content     = response.Content;
                    var           responseObj = Newtonsoft.Json.JsonConvert.DeserializeObject <IList <CategoryMasterResponse> >(content);
                    if (responseObj != null && responseObj.Count() > default(int))
                    {
                        var gtypecodes = new List <string>();
                        var gstrings   = responseObj.Select(r => r.ProductTypeName).ToList();
                        var gcodes     = responseObj.Select(r => r.ProductTypeId).ToList();
                        //responseObj.Select(r => r.pr)
                        var gimages = BitmapHelpers.GetImageListFromUrlList(responseObj.Select(r => r.catImageName).ToList(), mStringSessionToken, this.Activity.Resources);
                        gstrings.Add("Back to Dashboard");
                        gcodes.Add("BCK");
                        foreach (var x in gcodes)
                        {
                            gtypecodes.Add(ProductType.None.GetHashCode().ToString());
                        }
                        gimages.Add(BitmapFactory.DecodeResource(this.Activity.Resources, Resource.Drawable.back));

                        gridViewString         = gstrings.ToArray();
                        gridViewCodeString     = gcodes.ToArray();
                        gridViewTypeCodeString = gtypecodes.ToArray();
                        gridViewImages         = gimages.ToArray();
                    }
                    else
                    {
                        throw new Exception("No item found");
                    }
                }
                else if (objSelectedItem.Count() > default(int) && !string.IsNullOrEmpty(objSelectedItem.FirstOrDefault().ItemCode))
                {
                    var            gstrings   = new List <string>();
                    var            gcodes     = new List <string>();
                    var            gtypecodes = new List <string>();
                    IList <Bitmap> gimages    = new List <Bitmap>();

                    var client  = new RestClient(Common.UrlBase);
                    var request = new RestRequest("Product/GetSubCategoryList", Method.GET);
                    request.AddHeader("Content-Type", "application/json");
                    request.AddHeader("TokenKey", mStringSessionToken);
                    request.AddQueryParameter("catId", System.Net.WebUtility.UrlEncode(objSelectedItem.FirstOrDefault().ItemCode.Replace("Ø", "")));
                    IRestResponse response    = client.Execute(request);
                    var           content     = response.Content;
                    var           responseObj = Newtonsoft.Json.JsonConvert.DeserializeObject <IList <ProductDetailResponse> >(content);
                    if (responseObj != null && responseObj.Count() > default(int))
                    {
                        gstrings   = responseObj.Select(r => r.ProductName).ToList();
                        gcodes     = responseObj.Select(r => r.ProductId).ToList();
                        gtypecodes = responseObj.Select(r => r.prodType.GetHashCode().ToString()).ToList();
                        gimages    = BitmapHelpers.GetImageListFromUrlList(responseObj.Select(r => r.prodImageName).ToList(), mStringSessionToken, this.Activity.Resources);
                        gstrings.Add(string.Format("Back to {0}", responseObj.FirstOrDefault().ProductTypeName));
                        gcodes.Add(string.Format("Ø{0}", responseObj.Select(r => r.CategoryID).FirstOrDefault()));
                        gtypecodes.Add(ProductType.None.GetHashCode().ToString());
                        gimages.Add(BitmapFactory.DecodeResource(this.Activity.Resources, Resource.Drawable.back));
                    }

                    gstrings.Add("Back to Dashboard");
                    gcodes.Add("BCK");
                    gtypecodes.Add(ProductType.None.GetHashCode().ToString());
                    gimages.Add(BitmapFactory.DecodeResource(this.Activity.Resources, Resource.Drawable.backtoprevious));

                    gstrings.Add("Add New Product");
                    gcodes.Add("NPR");
                    gtypecodes.Add(ProductType.None.GetHashCode().ToString());
                    gimages.Add(BitmapFactory.DecodeResource(this.Activity.Resources, Resource.Drawable.addprd));

                    gridViewString         = gstrings.ToArray();
                    gridViewCodeString     = gcodes.ToArray();
                    gridViewTypeCodeString = gtypecodes.ToArray();
                    gridViewImages         = gimages.ToArray();
                }
            }
            catch (Exception ex)
            {
                this.Activity.RunOnUiThread(() =>
                {
                    Android.App.AlertDialog.Builder alertDiag = new Android.App.AlertDialog.Builder(this.Activity);
                    alertDiag.SetTitle(Resource.String.DialogHeaderError);
                    alertDiag.SetMessage(ex.Message);
                    alertDiag.SetIcon(Resource.Drawable.alert);
                    alertDiag.SetPositiveButton(Resource.String.DialogButtonOk, (senderAlert, args) =>
                    {
                        DashboardFragment objFragment = new DashboardFragment();
                        Android.Support.V4.App.FragmentTransaction tx = FragmentManager.BeginTransaction();
                        tx.Replace(Resource.Id.m_main, objFragment, Constants.dashboard);
                        tx.Commit();
                    });
                    Dialog diag = alertDiag.Create();
                    diag.Show();
                    diag.SetCanceledOnTouchOutside(false);
                });
            }

            try
            {
                if (gridViewCodeString.Count() == gridViewImages.Count())
                {
                    _generic_grid_menu_bitmap_helper adapterViewAndroid = new _generic_grid_menu_bitmap_helper(this.Activity, gridViewString, gridViewCodeString, gridViewTypeCodeString, gridViewImages);
                    androidGridView = root.FindViewById <GridView>(Resource.Id.grid_view_activities);
                    new System.Threading.Thread(new System.Threading.ThreadStart(() =>
                    {
                        if (this.Activity != null)
                        {
                            this.Activity.RunOnUiThread(() =>
                            {
                                androidGridView.SetAdapter(adapterViewAndroid);
                            });
                        }
                    })).Start();
                    androidGridView.ItemClick += (sndr, argus) => ItemSearch_clicked(sndr, argus, this.Activity);
                }
                else
                {
                    throw new Exception("No data available. Please report to admin");
                }
            }
            catch (Exception ex)
            {
                this.Activity.RunOnUiThread(() =>
                {
                    Android.App.AlertDialog.Builder alertDiag = new Android.App.AlertDialog.Builder(this.Activity);
                    alertDiag.SetTitle(Resource.String.DialogHeaderError);
                    alertDiag.SetMessage(ex.Message);
                    alertDiag.SetIcon(Resource.Drawable.alert);
                    alertDiag.SetPositiveButton(Resource.String.DialogButtonOk, (senderAlert, args) =>
                    {
                        DashboardFragment objFragment = new DashboardFragment();
                        Android.Support.V4.App.FragmentTransaction tx = FragmentManager.BeginTransaction();
                        tx.Replace(Resource.Id.m_main, objFragment, Constants.dashboard);
                        tx.Commit();
                    });
                    Dialog diag = alertDiag.Create();
                    diag.Show();
                    diag.SetCanceledOnTouchOutside(false);
                });
            }

            return(root);
        }
        protected override void OnCreate(Bundle bundle)
        {
            try
            {
                base.OnCreate(bundle);
                SetContentView(Resource.Layout.activity_maincontent);

                mToolbar      = FindViewById <SupportToolbar>(Resource.Id.m_toolbar);
                mDrawerLayout = FindViewById <DrawerLayout>(Resource.Id.m_drawer_layout);
                mLeftDrawer   = FindViewById <ListView>(Resource.Id.m_left_drawer);

                dashboardFragment       = new DashboardFragment();
                myFarmDashboardFragment = new MyFarmDashboardFragment();
                myProfileFragment       = new MyProfileFragment();
                addActivityFragment     = new AddActivityFragment();
                activityViewerFragment  = new ActivityViewerFragment();
                askAggieFragment        = new AskAggieFragment();
                settingsFragment        = new SettingsFragment();
                contactFragment         = new ContactFragment();
                chatbotFragment         = new ChatbotFragment();
                chatListManagerFragment = new ChatListManagerFragment();

                mStackFragments = new Stack <SupportFragment>();

                mLeftDrawer.Tag = 0;

                SetSupportActionBar(mToolbar);

                mLeftDataSet = new List <string>();
                mLeftDataSet.Add("My Dashboard");
                mLeftDataSet.Add("My Farm");
                mLeftDataSet.Add("My Profile");
                mLeftDataSet.Add("Add Activitiy");
                mLeftDataSet.Add("View Activities");
                /*mLeftDataSet.Add("Ask an Aggie");*/
                /*mLeftDataSet.Add("Settings");*/

                var objdbTemp = new DBaseOperations();
                var lstux     = objdbTemp.selectTable();
                if (lstux != null && lstux.Count > default(int))
                {
                    var uobj = lstux.FirstOrDefault();
                    if (uobj != null && uobj.IsAdmin > default(int))
                    {
                        mLeftDataSet.Add("Chat Management");
                    }
                    else
                    {
                        mLeftDataSet.Add("Ask an Aggie");
                    }
                }
                else
                {
                    mLeftDataSet.Add("Ask an Aggie");
                }

                mLeftDataSet.Add("Contact Us");
                mLeftAdapter           = new ArrayAdapter <string>(this, Android.Resource.Layout.SimpleListItem1, mLeftDataSet);
                mLeftDrawer.Adapter    = mLeftAdapter;
                mLeftDrawer.ItemClick += MenuListView_ItemClick;

                mDrawerToggle = new ActionBarDrawerToggle(this, mDrawerLayout, Resource.String.openDrawer, Resource.String.closeDrawer);

                mDrawerLayout.SetDrawerListener(mDrawerToggle);
                SupportActionBar.SetHomeButtonEnabled(true);
                SupportActionBar.SetDisplayShowTitleEnabled(true);
                SupportActionBar.SetDisplayHomeAsUpEnabled(true);
                mDrawerToggle.SyncState();

                if (bundle != null)
                {
                    if (bundle.GetString("DrawerState") == "Opened")
                    {
                        SupportActionBar.SetTitle(Resource.String.openDrawer);
                    }
                    else
                    {
                        SupportActionBar.SetTitle(Resource.String.closeDrawer);
                    }
                }
                else
                {
                    SupportActionBar.SetTitle(Resource.String.closeDrawer);
                }

                try
                {
                    string mStringLoginInfo    = string.Empty;
                    string mStringSessionToken = string.Empty;
                    string mStringGoodName     = string.Empty;
                    circular_imageViewLogo = this.FindViewById <Refractored.Controls.CircleImageView>(Resource.Id.circular_imageViewLogo);
                    imageViewLogo          = this.FindViewById <ImageView>(Resource.Id.imageViewLogo);
                    textView = this.FindViewById <TextView>(Resource.Id.textView);
                    try
                    {
                        objdb = new DBaseOperations();
                        var lstu = objdb.selectTable();
                        if (lstu != null && lstu.Count > default(int))
                        {
                            var uobj = lstu.FirstOrDefault();
                            if (uobj.Password == " ")
                            {
                                throw new Exception("Please login again");
                            }
                            mStringLoginInfo    = uobj.EmailId;
                            mStringSessionToken = uobj.AuthToken;
                            mStringGoodName     = uobj.GoodName;
                            _profilepicbase64   = uobj.ProfilePicture;
                        }
                    }
                    catch { }

                    if (!string.IsNullOrEmpty(_profilepicbase64))
                    {
                        var btmpimg = BitmapHelpers.Base64ToBitmap(_profilepicbase64);
                        circular_imageViewLogo.Visibility = ViewStates.Visible;
                        imageViewLogo.Visibility          = ViewStates.Gone;
                        textView.Text = string.Format("Hello, {0}", mStringGoodName);
                        circular_imageViewLogo.RecycleBitmap();
                        circular_imageViewLogo.SetImageBitmap(btmpimg);
                    }
                    else
                    {
                        circular_imageViewLogo.Visibility = ViewStates.Gone;
                        imageViewLogo.Visibility          = ViewStates.Visible;
                        textView.Text = !string.IsNullOrEmpty(mStringGoodName) ? string.Format("Hello, {0}", mStringGoodName) : "";
                    }
                }
                catch { }

                IList <Android.Support.V4.App.Fragment> fragmentsarray = SupportFragmentManager.Fragments;
                if (fragmentsarray != null && fragmentsarray.Count > default(int))
                {
                    foreach (Android.Support.V4.App.Fragment fragment in fragmentsarray)
                    {
                        string tag = fragment.Tag;
                        Android.Support.V4.App.FragmentTransaction tx = SupportFragmentManager.BeginTransaction();
                        tx.Replace(Resource.Id.m_main, fragment, fragment.Tag);
                        tx.Commit();
                        break;
                    }
                }
                else
                {
                    Android.Support.V4.App.FragmentTransaction tx = SupportFragmentManager.BeginTransaction();
                    tx.Replace(Resource.Id.m_main, dashboardFragment, Constants.dashboard);
                    tx.Commit();
                }
            }
            catch (Exception ex)
            {
                this.RunOnUiThread(() =>
                {
                    Android.App.AlertDialog.Builder alertDiag = new Android.App.AlertDialog.Builder(this);
                    alertDiag.SetTitle(Resource.String.DialogHeaderError);
                    alertDiag.SetMessage(ex.Message);
                    alertDiag.SetIcon(Resource.Drawable.alert);
                    alertDiag.SetPositiveButton(Resource.String.DialogButtonOk, (senderAlert, args) =>
                    {
                        Intent intent = new Intent(this, typeof(MainActivity));
                        StartActivity(intent);
                        this.Finish();
                    });
                    Dialog diag = alertDiag.Create();
                    diag.Show();
                    diag.SetCanceledOnTouchOutside(false);
                });
            }
        }