Example #1
0
        public void Dispose()
        {
            NavigationModel?.Dispose();
            MessengerModel?.Dispose();
            SettingsModel?.Dispose();

            _modelDisposable.Dispose();
        }
Example #2
0
        private void InitMessenger(
            IFactory <CatalogKind, MessengerModel> messengerModelFactory,
            ContentKind contentKind
            )
        {
            SettingsModel?.Dispose();

            var catalogKind = (CatalogKind)contentKind;

            MessengerModel?.Dispose();
            MessengerModel = messengerModelFactory.Create(catalogKind);
        }
        private void CallbackOnCallbackMessage(object sender, EventArgs e)
        {
            if (sender is MessageCallbackData data)
            {
                if (SendToChat != null && data.ChatGuid == SendToChat.ChatGuid)
                {
                    MessengerModel mes = new MessengerModel();
                    mes.Date = data.Date.ToShortDateString() + " " + data.Date.ToShortTimeString();

                    mes.Nick = _users.Single(x => x.Guid == data.SendedUserGuid).ShortName;

                    mes.Message = data.Message;
                    MessengerModels.Add(mes);
                }
            }
        }
        public MessengerModel getConversations(MessengerModel m)
        {
            dbUtils db  = new dbUtils();
            string  sql = "select con_id, con_contactID ,con_notifications,con_starter from CONVERSATIONS where con_userID =" + m.userId;

            ArrayList[] data = new ArrayList[4];
            data     = db.fetch(sql, 4);
            m.consId = data[0];
            var con = new SOCIALMEDIA_DBEntities();

            foreach (int contactID in data[1])
            {
                m.conversations.Add(con.USERS.Find(contactID));
            }
            m.notifications = data[2];
            m.starter       = data[3];
            return(m);
        }
        //
        // GET: /messenger/
        public ActionResult Messenger()
        {
            MessengerModel m = new MessengerModel();

            m.consId        = new ArrayList();
            m.contacts      = new ArrayList();
            m.conversations = new ArrayList();
            m.date          = new ArrayList();
            m.notifications = new ArrayList();
            m.starter       = new ArrayList();
            m.userOneMess   = new ArrayList();
            m.userTwoMess   = new ArrayList();

            m.userId = (Int32)Session["ownerid"];
            var con = new SOCIALMEDIA_DBEntities();

            m.headerm       = new headerModel();
            m.headerm.owner = con.USERS.Find(m.userId);

            ///get friends list
            ArrayList friendsIds = new ArrayList();
            var       friends    = con.FOLLOWINGS.Where(f => f.USERID == m.userId && f.FR_CONFIRMED == true).Select(f => f.FOLLOWINGID);

            foreach (int id in friends)
            {
                friendsIds.Add(id);
            }
            var friends_ = con.FOLLOWINGS.Where(f => f.FOLLOWINGID == m.userId && f.FR_CONFIRMED == true).Select(f => f.USERID);

            foreach (int id in friends_)
            {
                friendsIds.Add(id);
            }

            foreach (int fr in friendsIds)
            {
                USER friend = con.USERS.Find(fr);
                m.contacts.Add(friend);
            }
            m = getConversations(m);

            return(View(m));
        }
        public MessengerViewModel(IMessageCallback callback, AuthorizationResult data)
        {
            Chats = new ObservableCollection <ChatModel>();
            Chats.CollectionChanged += ChatsOnCollectionChanged;
            MessengerData            = new MessengerModel();
            var employee = data.Employee;

            MessengerModels = new ObservableCollection <MessengerModel>();

            var emptyPhotoPath = "Images\\emptyImage.png";

            if (File.Exists(emptyPhotoPath))
            {
                _emptyPhoto = ImageHelper.GetImage(emptyPhotoPath);
            }

            CurrentUser = new UserModel
            {
                Login      = employee.Login,
                Name       = employee.Name,
                Surname    = employee.Surname,
                Patronymic = employee.Patronymic,
                Email      = employee.Email,
                Guid       = employee.Guid,
                Position   = employee.Position
            };

            CurrentUser.EmployeePhoto = ImageHelper.ByteToImageSource(employee.Photo) ?? _emptyPhoto;

            callback.CallbackMessage -= CallbackOnCallbackMessage;
            callback.NeedUpdateChats -= CallbackOnNeedUpdateChats;
            callback.CallbackMessage += CallbackOnCallbackMessage;
            callback.NeedUpdateChats += CallbackOnNeedUpdateChats;
            var manager = DIFactory.Resolve <IServiceManager>();

            manager.Disconnected += ManagerOnDisconnected;
        }
Example #7
0
        private void InitSettings(IFactory <SettingsModel> settingsModelFactory)
        {
            MessengerModel?.Dispose();

            SettingsModel = settingsModelFactory.Create();
        }
 public MessengerViewModel()
 {
     MessengerData = new MessengerModel();
 }