Пример #1
0
        private void Menuitemselector(int position)
        {
            switch (position)
            {
            case 1:
                SidebarController.CloseMenu();
                break;

            case 2:
                SidebarController.CloseMenu();
                Profile profile = this.Storyboard.InstantiateViewController("Profile") as Profile;
                if (profile != null)
                {
                    this.PresentModalViewController(profile, true);
                }
                break;

            case 3:
                SidebarController.CloseMenu();
                StaticDataModel.NotificationBadgeCount_Chat = 0;
                ChatWithSchool chat = this.Storyboard.InstantiateViewController("ChatWithSchool") as ChatWithSchool;
                if (chat != null)
                {
                    this.PresentModalViewController(chat, true);
                }

                break;

            case 4:
                SidebarController.CloseMenu();
                StaticDataModel.NotificationBadgeCount = 0;
                NotificationsController noti = this.Storyboard.InstantiateViewController("NotificationsController") as NotificationsController;
                if (noti != null)
                {
                    this.PresentModalViewController(noti, true);
                }
                break;

            case 5:
                SidebarController.CloseMenu();
                ReportAbsent ra = this.Storyboard.InstantiateViewController("ReportAbsent") as ReportAbsent;
                if (ra != null)
                {
                    this.PresentModalViewController(ra, true);
                }
                break;

            case 6:
                SidebarController.CloseMenu();
                ChangePassword change = this.Storyboard.InstantiateViewController("ChangePassword") as ChangePassword;
                if (change != null)
                {
                    this.PresentModalViewController(change, true);
                }
                break;

            case 7:

                SidebarController.CloseMenu();
                StaticDataModel.IsFromLanguageMenu = true;
                AppDelegate ap = new AppDelegate();
                if (StaticDataModel.CurrentLanguage == "en")
                {
                    Home home = ap.MainStoryboard.InstantiateViewController("Home") as Home;
                    UIApplication.SharedApplication.KeyWindow.RootViewController = home;
                }
                else
                {
                    Home home = ap.Main_ArabicStoryboard.InstantiateViewController("Home") as Home;
                    UIApplication.SharedApplication.KeyWindow.RootViewController = home;
                }
                break;

            case 8:
                SidebarController.CloseMenu();
                Settings settings = this.Storyboard.InstantiateViewController("Settings") as Settings;
                if (settings != null)
                {
                    this.PresentModalViewController(settings, true);
                }
                break;

            case 9:
                SidebarController.CloseMenu();

                if (StaticDataModel.CurrentLanguage == "en")
                {
                    //Create Alert
                    var okCancelAlertController = UIAlertController.Create("Please Confirm", "Do you want to logout?", UIAlertControllerStyle.Alert);

                    //Add Actions
                    okCancelAlertController.AddAction(UIAlertAction.Create("YES", UIAlertActionStyle.Default, alert =>
                    {
                        LogoutProcess();
                    }));
                    okCancelAlertController.AddAction(UIAlertAction.Create("CANCEL", UIAlertActionStyle.Cancel, alert =>
                    {
                    }));

                    //Present Alert
                    PresentViewController(okCancelAlertController, true, null);
                }
                else
                {
                    //Create Alert
                    var okCancelAlertController = UIAlertController.Create("برجاء التأكيد", "هل تريد الخروج ؟", UIAlertControllerStyle.Alert);

                    //Add Actions
                    okCancelAlertController.AddAction(UIAlertAction.Create("إلغاء", UIAlertActionStyle.Default, alert =>
                    {
                        LogoutProcess();
                    }));
                    okCancelAlertController.AddAction(UIAlertAction.Create("نعم", UIAlertActionStyle.Cancel, alert =>
                    {
                    }));

                    //Present Alert
                    PresentViewController(okCancelAlertController, true, null);
                }


                break;
            }
        }
Пример #2
0
        public override void ViewDidLoad()
        {
            base.ViewDidLoad();

            NSUrl url = new NSUrl(SocketUrl + StaticDataModel.UserId);

            webSocket = new WebSocket(url);
            webSocket.Open();
            ap = new AppDelegate();
            tableviewActualSize             = tblConversation.Frame;
            textfield                       = new UITextField(new RectangleF((float)txtWritehere.Frame.X, 30, (float)txtWritehere.Frame.Width, (float)txtWritehere.Frame.Height));
            textfield.BackgroundColor       = UIColor.White;
            textfield.Layer.CornerRadius    = 14;
            textfield.Layer.BorderWidth     = 4;
            textfield.Layer.BorderColor     = new UIColor(red: 1f, green: 0.79f, blue: 0f, alpha: 1.0f).CGColor;
            textfield.AttributedPlaceholder = new NSAttributedString("Write here", null, UIColor.DarkGray);
            textfield.Font                  = txtWritehere.Font;
            textfield.BorderStyle           = UITextBorderStyle.RoundedRect;
            StaticMethods.SetPadding(textfield, 5);

            textfield.ShouldReturn += (textField) =>
            {
                textField.ResignFirstResponder();

                return(true);
            };

            txtWritehere.ShouldReturn += (textField) =>
            {
                textField.ResignFirstResponder();
                return(true);
            };

            UIKeyboard.Notifications.ObserveWillShow((sender, e) =>
            {
                textfield.BecomeFirstResponder();
                if (StaticMethods.DeviceType() == "ipad")
                {
                    imgTyping.Frame = new CoreGraphics.CGRect(typingimage_frame.X,
                                                              typingimage_frame.Y - 300,
                                                              typingimage_frame.Width,
                                                              typingimage_frame.Height);
                }
                else
                {
                    imgTyping.Frame = new CoreGraphics.CGRect(typingimage_frame.X,
                                                              typingimage_frame.Y - 200,
                                                              typingimage_frame.Width,
                                                              typingimage_frame.Height);
                }
            });
            UIKeyboard.Notifications.ObserveWillHide((sender, e) =>
            {
                textfield.BecomeFirstResponder();
                tblConversation.Frame = tableviewActualSize;
                txtWritehere.Text     = textfield.Text;
                imgTyping.Frame       = typingimage_frame;
            });

            txtWritehere.AttributedPlaceholder = new NSAttributedString("Write here", null, UIColor.DarkGray);

            this.txtWritehere.ShouldChangeCharacters = (textField, range, replacementString) =>
            {
                SendSocketMessage("type");
                return(true);
            };
            GetStudentConversation();
            // Create request for remote resource

            webSocket.WebSocketOpened += (sender, e) =>
            {
                // the socket was opened, so we can start using it
                IsConnected = true;
                SendSocketMessage("read");
            };


            webSocket.ReceivedMessage += (sender, e) =>
            {
                JObject jObj = JObject.Parse(e.Message.ToString());
                Console.WriteLine(e.Message.ToString());
                StaticDataModel.SocketSessionId = jObj["sessionId"].ToString();
                StaticDataModel.SocketFlag      = jObj["flag"].ToString();
                if (StaticDataModel.SocketFlag == "message")
                {
                    var id      = jObj["user_id"].ToString();
                    var message = jObj["message"].ToString();
                    //if (message != "1" && message != "read_unread_check")
                    //{
                    if (id == StaticDataModel.UserId.ToString())
                    {
                        if (message == "1")
                        {
                            imgTyping.Hidden = false;
                            Console.WriteLine("Typing....");
                        }
                        else if (message == "read_unread_check")
                        {
                            Console.WriteLine("Seen....");
                            model.Select(c => { c.status = 1; return(c); }).ToList();
                            RefreshTableview();
                            imgTyping.Hidden = true;
                        }
                        else
                        {
                            addCurrentMessagesTotableview(0, 0, message);
                            SendSocketMessage("read");
                            imgTyping.Hidden = true;
                        }
                    }
                    //}
                }
            };
            PrepareUI();
            SetData();


            imgBack.AddGestureRecognizer(new UITapGestureRecognizer(ro =>
            {
                if (!StaticDataModel.isFromNotification)
                {
                    this.DismissModalViewController(false);
                }
                else
                {
                    if (StaticDataModel.CurrentLanguage == "en")
                    {
                        Home home = ap.MainStoryboard.InstantiateViewController("Home") as Home;
                        UIApplication.SharedApplication.KeyWindow.RootViewController = home;
                        //StaticMethods.ChangeLocalization("en")
                    }
                    else
                    {
                        Home home = ap.Main_ArabicStoryboard.InstantiateViewController("Home") as Home;
                        UIApplication.SharedApplication.KeyWindow.RootViewController = home;
                        //StaticMethods.ChangeLocalization("ar");
                    }
                }
            }));

            txtWritehere.EditingDidBegin += TxtWritehere_EditingDidBegin;
        }