Ejemplo n.º 1
0
        /// <summary>
        /// Saving new file attachments.
        /// </summary>
        /// <param name="fileCollection">Collection of posted files.</param>
        /// <param name="person"></param>
        public void SavePhotoAttachmentFiles(HttpFileCollection fileCollection, Person person)
        {
            for (int i = 0; i < fileCollection.Count; i++)
            {
                HttpPostedFile file = fileCollection[i];

                if (file.FileName != null && !String.IsNullOrEmpty(file.FileName))
                {
                    String uniqueName = String.Empty;
                    String fileName = String.Empty;

                    fileName = file.FileName.Replace("/", "\\");
                    int index = fileName.LastIndexOf("\\");
                    fileName = fileName.Substring(index + 1);

                    // уникальное имя файла на сервере
                    uniqueName = Guid.NewGuid() + "_" + fileName;

                    //добавляем информацию о фото в БД
                    person.AddStandardStringAttribute(PersonAttributeTypes.Photo, uniqueName);

                    SaveFile(file, uniqueName);
                }
            }
        }
Ejemplo n.º 2
0
        public void Members()
        {
            Person person = new Person();
            person.LastName = new Core.MLText("en", "Yakimov");
            person.PersonGender = Person.Gender.Male;
            person.Save();

            Group admins = Group.GetGroup(Group.GroupsEnum.Administrator);
            admins.AddMember(person);

            Person[] arr = admins.Members;
            Assert.IsNotNull(arr);
            Assert.IsTrue(arr.Length > 0);

            admins.RemoveMember(person);

            person.Delete();
        }
Ejemplo n.º 3
0
        public void AddRemoveMember()
        {
            Person person = new Person();
            person.LastName = new Core.MLText("en", "Yakimov");
            person.PersonGender = Person.Gender.Male;
            person.Save();

            Assert.IsFalse(person.IsInGroup(Group.GroupsEnum.Administrator));
            Assert.AreEqual(0, person.Groups.Length);

            Group admins = Group.GetGroup(Group.GroupsEnum.Administrator);
            admins.AddMember(person);

            Assert.IsTrue(person.IsInGroup(Group.GroupsEnum.Administrator));
            Assert.AreEqual(1, person.Groups.Length);

            admins.RemoveMember(person);

            Assert.IsFalse(person.IsInGroup(Group.GroupsEnum.Administrator));
            Assert.AreEqual(0, person.Groups.Length);

            person.Delete();
        }
Ejemplo n.º 4
0
        /// <summary>
        /// Отсылает пользовательскую статистику.
        /// </summary>
        /// <param name="curUser">Пользователь, которому отсылается статистика.</param>
        /// <param name="delivery">Описание рассылки.</param>
        private void SendUserStatistics(Person curUser, UserDelivery delivery)
        {
            if (curUser == null
                || curUser.ID == null
                || delivery == null)
                return;

            try
            {
                // Отослать статистику за неделю.
                DateTime end = DateTime.Today.AddDays(-1);
                DateTime begin = DateClass.WeekBegin(end);

                if (begin.Month < end.Month)
                    begin = new DateTime(end.Year, end.Month, 1, 0, 0, 0);

                MailItem item = new MailItem
                                    {
                                        FromAddress = FromAddress,
                                        ToAddress = curUser.PrimaryEMail,
                                        Subject = String.Format(Subject, curUser.FullName, begin, end),
                                        MessageType = ((int) MailTypes.UserStatistics)
                                    };

                // Узнать пользователя, чья статистика должна быть послана.
                Person statUser = curUser;
                if (delivery.StatisticsUserID != null)
                {
                    statUser = new Person();
                    if (!statUser.Load(delivery.StatisticsUserID.Value))
                        statUser = curUser;
                }

                PeriodUserStatistics stat = PeriodUserStatistics.GetUserStatistics(statUser, begin, end);
                switch (delivery.DeliveryPresentation)
                {
                    case DeliveryPresentation.XML:
                        item.IsHTML = false;
                        item.Body = stat.GetXMLPresentation();
                        break;

                    case DeliveryPresentation.HTML:
                        item.IsHTML = true;
                        item.Body = stat.GetHTMLPresentation();
                        break;
                }
                item.Save();

                // Отослать статистику за месяц.
                if (DateTime.Today.Day == 1)
                {
                    begin = new DateTime(end.Year, end.Month, 1, 0, 0, 0);
                    item.Subject = String.Format(Subject, curUser.FullName, begin, end);

                    stat = PeriodUserStatistics.GetUserStatistics(curUser, begin, end);
                    switch (delivery.DeliveryPresentation)
                    {
                        case DeliveryPresentation.XML:
                            item.IsHTML = false;
                            item.Body = stat.GetXMLPresentation();
                            break;

                        case DeliveryPresentation.HTML:
                            item.IsHTML = true;
                            item.Body = stat.GetHTMLPresentation();
                            break;
                    }

                    item.ID = null;
                    item.Save();
                }
            }
            catch (Exception ex)
            {
                Logger.Instance.Error("Can't send user " + curUser.FullName + " statistcs.", ex);
            }
        }
Ejemplo n.º 5
0
        /// <summary>
        /// Отсылает офисную статистику.
        /// </summary>
        /// <param name="curUser">Пользователь, которому отсылается статистика.</param>
        /// <param name="delivery">Описание рассылки.</param>
        private void SendOfficeStatistics(Person curUser, UserDelivery delivery)
        {
            if (curUser == null
                || curUser.ID == null
                || delivery == null)
                return;

            try
            {
                // Отослать статистику за неделю.
                DateTime end = DateTime.Today.AddDays(-1);
                DateTime begin = DateClass.WeekBegin(end);

                if (begin.Month < end.Month)
                    begin = new DateTime(end.Year, end.Month, 1, 0, 0, 0);

                MailItem item = new MailItem
                                    {
                                        FromAddress = FromAddress,
                                        ToAddress = curUser.PrimaryEMail,
                                        Subject = String.Format(SubjectAdmin, begin, end),
                                        MessageType = ((int) MailTypes.OfficeStatistics)
                                    };

                PeriodOfficeStatistics stat = PeriodOfficeStatistics.GetOfficeStatistics(begin, end);
                switch (delivery.DeliveryPresentation)
                {
                    case DeliveryPresentation.XML:
                        item.IsHTML = false;
                        item.Body = stat.GetXMLPresentation();
                        break;

                    case DeliveryPresentation.HTML:
                        item.IsHTML = true;
                        item.Body = stat.GetHTMLPresentation();
                        break;
                }
                item.Save();

                // Отослать статистику за месяц.
                if (DateTime.Today.Day == 1)
                {
                    begin = new DateTime(end.Year, end.Month, 1, 0, 0, 0);
                    item.Subject = String.Format(SubjectAdmin, begin, end);

                    stat = PeriodOfficeStatistics.GetOfficeStatistics(begin, end);
                    switch (delivery.DeliveryPresentation)
                    {
                        case DeliveryPresentation.XML:
                            item.IsHTML = false;
                            item.Body = stat.GetXMLPresentation();
                            break;

                        case DeliveryPresentation.HTML:
                            item.IsHTML = true;
                            item.Body = stat.GetHTMLPresentation();
                            break;
                    }

                    item.ID = null;
                    item.Save();
                }
            }
            catch (Exception ex)
            {
                Logger.Instance.Error("Can't send user " + curUser.FullName + " office statistics.", ex);
            }
        }
Ejemplo n.º 6
0
        // *********************************************************************
        //  GetUserInfo
        //
        /// <summary>
        /// Вернуть информацию о конкретном форуме.
        /// </summary>
        /// <param name="username">The user whose information you are interested in.</param>
        /// <param name="updateIsOnline">Updates user's online datetime stamp.</param>
        /// <returns>Instance of User with details about a given forum user.</returns>
        /// <remarks>
        /// If the specified user is not found, a UserNotFoundException exception is thrown. Feel
        /// free to call this multiple times during the request as the value is stored in Context once
        /// read from the data source.
        /// </remarks>
        // ***********************************************************************/
        public static User GetUserInfo( String username )
        {
            User user = new User();
            UlterSystems.PortalLib.BusinessObjects.Person UlterUser = new UlterSystems.PortalLib.BusinessObjects.Person();
            UlterUser.Load( Int32.Parse( username ) );
            user.Username = username;
            user.DisplayName = UlterUser.FirstName.ToString() + "&nbsp;" + UlterUser.LastName.ToString();
            user.IsApproved = !UlterUser.IsInRole( "ForumBannedUser" );
            user.IsAdministrator = UlterUser.IsInRole( "ForumAdministrator" );

            return user;
        }
Ejemplo n.º 7
0
        protected virtual Person GetUserDetailsFromReader(IDataReader reader)
        {
            int userID = (int) reader["ID"];
            Person user = new Person();
            user.Load(userID);

            return user;
        }
 public PersonalSettingsInterceptor(Person person)
 {
     m_Person = person;
 }