private async void loadDirectory_Click(object sender, RoutedEventArgs e)
        {
            PhotoOrganizer photoOrganizer = new PhotoOrganizer();
            PhotoCollection photoCollection = new PhotoCollection();

            FolderPicker directoryPicker = new FolderPicker();
            directoryPicker.SuggestedStartLocation = PickerLocationId.ComputerFolder;
            directoryPicker.FileTypeFilter.Add(".jpg");
            directoryPicker.FileTypeFilter.Add(".jpeg");
            directoryPicker.FileTypeFilter.Add(".png");
            directoryPicker.FileTypeFilter.Add(".gif");
            directoryPicker.ViewMode = PickerViewMode.Thumbnail;

            StorageFolder folder = await directoryPicker.PickSingleFolderAsync();
            if (folder != null)
            {
                StorageApplicationPermissions.FutureAccessList.AddOrReplace("PickedFolderToken", folder);

                IReadOnlyList<StorageFile> roFiles = await folder.GetFilesAsync();
                List<StorageFile> files = roFiles.ToList();

                foreach (StorageFile file in files)
                {
                    if (file.FileType.ToUpper() == ".JPG" || file.FileType.ToUpper() == ".JPEG")
                    {
                        photoCollection.Add(new Photo(file));
                    }
                }

                var currentView = ApplicationView.GetForCurrentView();
                CoreApplicationView photoViewer = CoreApplication.CreateNewView();

                await photoViewer.Dispatcher.RunAsync(
                    CoreDispatcherPriority.Normal,
                    async () =>
                    {
                        var newWindow = Window.Current;
                        var newAppView = ApplicationView.GetForCurrentView();
                        newAppView.Title = "Photo Viewer";

                        var frame = new Frame();
                        frame.Navigate(typeof(CollectionViewer), photoCollection);
                        newWindow.Content = frame;
                        newWindow.Activate();

                        await ApplicationViewSwitcher.TryShowAsStandaloneAsync(
                            newAppView.Id,
                            ViewSizePreference.UseMinimum,
                            currentView.Id,
                            ViewSizePreference.UseMinimum);
                    }
                    );
            }
        }
        public void Init()
        {
            //the first line of config file is the login,
                        //and the second one is the password
                        using (StreamReader sr = new StreamReader ("config")) {
                                login_config [0] = sr.ReadLine ();
                                login_config [1] = sr.ReadLine ();
                        }

                        fotki = new FotkiService (login_config [0], login_config [1]);
                        photos = fotki.GetPhotos ();
        }
Example #3
0
    /// <summary>
    /// creates a new photoCollection
    /// </summary>
    public void GetLocalGalleryByWebPhotoColletionID(string Name, string Description)
    {
        member = (Member)Session["Member"];

        PhotoCollection DefaultGallery = new PhotoCollection();

        DefaultGallery.WebPhotoCollectionID = Next2Friends.Misc.UniqueID.NewWebID();
        DefaultGallery.MemberID             = member.MemberID;
        DefaultGallery.DTCreated            = DateTime.Now;
        DefaultGallery.Name        = Name;
        DefaultGallery.Description = Description;
        DefaultGallery.Save();
    }
        public void PhotosGetContactsPhotosExtrasTest()
        {
            PhotoCollection photos = AuthInstance.PhotosGetContactsPhotos(10, false, false, false, PhotoSearchExtras.All);

            Assert.IsTrue(photos.Count > 0, "Should return some photos");
            Assert.AreEqual(10, photos.Count, "Should return 10 photos");

            foreach (Photo p in photos)
            {
                Assert.IsNotNull(p.OwnerName, "OwnerName should not be null");
                Assert.AreNotEqual(default(DateTime), p.DateTaken, "DateTaken should not be default DateTime");
            }
        }
        public void PhotosGetInfoCanBlogTest()
        {
            var o = new PhotoSearchOptions();

            o.UserId  = TestData.TestUserId;
            o.PerPage = 5;

            PhotoCollection photos = Instance.PhotosSearch(o);
            PhotoInfo       info   = Instance.PhotosGetInfo(photos[0].PhotoId);

            Assert.AreEqual(false, info.CanBlog);
            Assert.AreEqual(true, info.CanDownload);
        }
Example #6
0
        public void GroupsPoolGetPhotosDateAddedTest()
        {
            PhotoCollection photos = Instance.GroupsPoolsGetPhotos(Data.GroupId);

            Assert.IsNotNull(photos, "Photos should not be null");
            Assert.IsTrue(photos.Count > 0, "Should be more than 0 photos returned");

            foreach (Photo p in photos)
            {
                Assert.AreNotEqual(default(DateTime), p.DateAddedToGroup, "DateAddedToGroup should not be default value");
                Assert.IsTrue(p.DateAddedToGroup < DateTime.Now, "DateAddedToGroup should be in the past");
            }
        }
Example #7
0
        public void PhotosSearchUserIdTest()
        {
            PhotoSearchOptions o = new PhotoSearchOptions {
                UserId = TestData.TestUserId
            };

            PhotoCollection photos = Instance.PhotosSearch(o);

            foreach (Photo photo in photos)
            {
                Assert.AreEqual(TestData.TestUserId, photo.UserId);
            }
        }
Example #8
0
        public void PhotosSearchOwnerNameTest()
        {
            PhotoSearchOptions o = new PhotoSearchOptions();

            o.UserId  = TestData.TestUserId;
            o.PerPage = 10;
            o.Extras  = PhotoSearchExtras.OwnerName;

            Flickr          f      = TestData.GetInstance();
            PhotoCollection photos = f.PhotosSearch(o);

            Assert.IsNotNull(photos[0].OwnerName);
        }
        public static async Task <HttpResponseMessage> Run([HttpTrigger(AuthorizationLevel.Function, "get", "post", Route = null)] HttpRequestMessage req, TraceWriter log)
        {
            log.Info("C# HTTP trigger function processed a request.");

            Flickr              flickr;
            PhotoCollection     photos;
            HttpResponseMessage response;

            try
            {
                string url = "";
                int    cnt = 0;

                flickr = new Flickr(user.Default.flickrApiKey);
                photos = new PhotoCollection();

                PhotoSearchOptions opt = new PhotoSearchOptions
                {
                    UserId    = user.Default.userId,
                    SortOrder = PhotoSearchSortOrder.DateTakenDescending
                };
                photos = flickr.PhotosSearch(opt);

                foreach (Photo photo in photos)
                {
                    url += CreateThumbnailHtmlTag(photo.WebUrl, photo.SquareThumbnailUrl);
                    cnt += 1;
                    if (cnt >= user.Default.thumbnailCnt)
                    {
                        break;
                    }
                }

                string html = CreateContentHtml(url);
                response = new HttpResponseMessage(HttpStatusCode.OK)
                {
                    Content = new StringContent(html)
                };
                response.Content.Headers.ContentType = SetContentType();
                return(response);
            }
            catch (Exception)
            {
                response = new HttpResponseMessage(HttpStatusCode.InternalServerError);
                throw;
            }
            finally
            {
                GC.Collect();
            }
        }
        // enumerator for populating Image Libary with Flickr
        private static IEnumerable <TilePhotoInfo> GetFlickrImage()
        {
            Flickr flickr = new Flickr(Properties.Settings.Default.FlickrAPIKey);

            PhotoCollection photos = flickr.InterestingnessGetList(PhotoSearchExtras.All, 1, 500);

            foreach (var p in photos)
            {
                if (!String.IsNullOrEmpty(p.SquareThumbnailUrl))
                {
                    yield return(new TilePhotoInfo(p.PhotoId, p.SquareThumbnailUrl));
                }
            }
        }
    protected void Page_Load(object sender, EventArgs e)
    {
        AjaxPro.Utility.RegisterTypeForAjax(typeof(ViewGallery));

        member = (Member)Session["Member"];

        if (member != null)
        {
            IsLoggedIn = true;
        }

        LoginUrl = @"/signup.aspx?u=" +  Server.UrlEncode(Request.Url.AbsoluteUri);

        string strPage = Request.Params["p"];
        CurrentPageIndex = Pager.TryGetPageIndex(strPage);

        // load the members photo
        string strGalleryPhoto = Request.Params["g"];

        if (strGalleryPhoto != null)
        {
            URLPhotoCollectionID = strGalleryPhoto;
            ViewingMember = Member.GetMemberByPhotoCollectionID(strGalleryPhoto);
            DefaultGallery = PhotoCollection.GetPhotoCollectionByWebPhotoCollectionID(strGalleryPhoto);
            GalleryNameHTML = DefaultGallery.Name;
            GetGalleryDrop();
            GetGalleryLister(CurrentPageIndex);
            GetPhotoJSArray();

        }
        else
        {
            // the member failed to load from the URL param.. throw a friendly
        }

        if (member != null)
        {
            if (ViewingMember.MemberID == member.MemberID)
            {
                IsMyPage = true;
            }
        }
        
        Comments1.CommentType = CommentType.Photo;
        forwardToFriend.ObjectWebID = URLPhotoCollectionID;
        forwardToFriend.ContentType = CommentType.PhotoGallery;   



    }
Example #12
0
        public void GroupsPoolGetPhotosFullParamTest()
        {
            PhotoCollection photos = Instance.GroupsPoolsGetPhotos(Data.GroupId, null, Data.UserId, PhotoSearchExtras.All, 1, 20);

            Assert.IsNotNull(photos, "Photos should not be null");
            Assert.IsTrue(photos.Count > 0, "Should be more than 0 photos returned");
            Assert.AreEqual(20, photos.PerPage);
            Assert.AreEqual(1, photos.Page);

            foreach (Photo p in photos)
            {
                Assert.AreNotEqual(default(DateTime), p.DateAddedToGroup, "DateAddedToGroup should not be default value");
                Assert.IsTrue(p.DateAddedToGroup < DateTime.Now, "DateAddedToGroup should be in the past");
            }
        }
        public static void Copy(PhotoCollection response)
        {
            Photos._all.Clear();

            foreach (var photo in response)
            {
                var ep = new EdmundsPhoto(photo.Id, photo.CaptionTranscript, photo.SubType, photo.ShotTypeAbbreviation);
                foreach (var source in photo.PhotoSources)
                {
                    ep.Pictures.Add(@"http://media.ed.edmunds-media.com" + source);
                }

                Photos.All.Add(ep);
            }
        }
Example #14
0
        public PhotoViewModel()
        {
            _currentPhoto = null;
              _imageDirectory = null;
              _imageNumber = 0;
              _imageCount = 0;
              _imageFiles = new List<string>();
              _photos = new PhotoCollection();
              _photoDisplayMode = Stretch.Uniform;

              registerCommands();

              //Task.Run(() =>
              //  {
              if (Environment.GetCommandLineArgs().Length > 1)
            loadImages(Environment.GetCommandLineArgs()[1]);
              else
            //LoadImages("C:\\Users\\Ryan\\Pictures\\sky, space and landscapes\\3r4en.jpg");
            loadImages("C:\\Users\\Public\\Pictures\\Sample Pictures\\Desert.jpg");
              //});
        }
Example #15
0
        public override PhotoCollection GetPhotos(int albumID, int[] photodis, int photoPageNumber, int photoPageSize, ref int? totalPhotoCount)
        {
            using (SqlQuery query = new SqlQuery())
            {
                query.Pager.TableName = "[bx_Photos]";
                query.Pager.SortField = "[PhotoID]";
                query.Pager.IsDesc = true;
                query.Pager.PageNumber = photoPageNumber;
                query.Pager.PageSize = photoPageSize;
                query.Pager.TotalRecords = totalPhotoCount;
                query.Pager.SelectCount = true;
                query.Pager.Condition = "[AlbumID] = @AlbumID";

                query.CreateParameter<int>("@AlbumID", albumID, SqlDbType.Int);

                if (photodis != null && photodis.Length > 0)
                {
                    query.Pager.Condition += " AND [PhotoID] IN(" + StringUtil.Join(photodis) + ")";
                }

                using (XSqlDataReader reader = query.ExecuteReader())
                {
                    PhotoCollection photos = new PhotoCollection(reader);

                    if (totalPhotoCount == null && reader.NextResult() && reader.Read())
                    {
                        totalPhotoCount = reader.Get<int>(0);
                    }

                    photos.TotalRecords = totalPhotoCount.GetValueOrDefault();

                    return photos;
                }
            }
        }
    protected void Page_Load(object sender, EventArgs e)
    {
        AjaxPro.Utility.RegisterTypeForAjax(typeof(ViewGalleryPB));

        member = (Member)Session["Member"];

        if (member != null)
        {
            IsLoggedIn = true;
        }

        // set the default forwarding if the member is not logged in
        LoginUrl = @"signup.aspx?u=" + Request.Url.AbsoluteUri;
        SubscribeLink = LoginUrl;
        SendMessageLink = LoginUrl;
        BlockMemberLink = LoginUrl;
        AddToFriendsLink = LoginUrl;
        AddFavouritesLink = LoginUrl;

        // load the members photo
        string strGalleryPhoto = Request.Params["g"];
        string strPhoto = Request.Params["p"];

        if (strGalleryPhoto != null)
        {
            ViewingMember = Member.GetMemberByPhotoCollectionID(strGalleryPhoto);
            ViewingMemberProfile = ViewingMember.MemberProfile[0];
            DefaultNumberOfViews = (++ViewingMemberProfile.NumberOfViews).ToString();
            ViewingMemberProfile = ViewingMember.MemberProfile[0];
            DefaultGallery = PhotoCollection.GetPhotoCollectionByWebPhotoCollectionID(strGalleryPhoto);
            GalleryNameHTML = DefaultGallery.Name;

            GetGalleryDrop();
            GetPhotoJSArray();
            DisplayGallery = "block";

        }
        else
        {
            // the member failed to load from the URL param.. throw a friendly
        }

        if (strPhoto != null)
        {
            DefaultPhoto = Photo.GetPhotoByWebPhotoIDWithJoin(strPhoto);
            DefaultPhotoURL = ParallelServer.Get(DefaultPhoto.PhotoResourceFile.FullyQualifiedURL) + DefaultPhoto.PhotoResourceFile.FullyQualifiedURL;
            DefaultPhotoCaption = DefaultPhoto.Caption;
            DefaultWebPhotoID = DefaultPhoto.WebPhotoID;
            DisplayPhoto = "block";
            DisplayCurrentIndex = "block";
            DisplayComments = "block";            
            SetPagerButtons();

            
        }
        else
        {
            GetGalleryLister();
        }

        if (member != null)
        {
            if (ViewingMember.MemberID == member.MemberID)
            {
                IsMyPage = true;
            }
        }

        try
        {

            NumberOfVideos = ViewingMemberProfile.NumberOfVideos;
            NumberOfPhotos = ViewingMemberProfile.NumberOfPhotos;
            NumberOfFriends = FriendRequest.GetNumberOfFriends(ViewingMember.MemberID);
        }
        catch { }

    }
Example #17
0
        public override DenouncingCollection GetDenouncingWithPhoto(DenouncingFilter filter, int pageNumber)
        {
            using (SqlSession db = new SqlSession())
            {
                DenouncingCollection denouncings = null;

                using (SqlQuery query = db.CreateQuery())
                {
                    query.Pager.PageNumber = pageNumber;
                    query.Pager.PageSize = filter.PageSize;
                    query.Pager.TableName = "bx_Denouncings";
                    query.Pager.SortField = "DenouncingID";
                    query.Pager.IsDesc = filter.IsDesc;
                    query.Pager.SelectCount = true;

                    filter.Type = DenouncingType.Photo;

                    GetSearchDenouncingsCondition(query, filter);

                    using (XSqlDataReader reader = query.ExecuteReader())
                    {
                        denouncings = new DenouncingCollection(reader);

                        if (reader.NextResult())
                        {
                            while (reader.Read())
                                denouncings.TotalRecords = reader.Get<int>(0);
                        }
                    }
                }

                FillDenouncingContents(denouncings, db);

                if (denouncings.Count > 0)
                {
                    int[] targetIDs = GetTargetIDs(denouncings);

                    PhotoCollection photos = null;

                    using (SqlQuery query = db.CreateQuery())
                    {
                        query.CommandText = "SELECT * FROM bx_Photos WHERE PhotoID IN (@IDs)";

                        query.CreateInParameter<int>("@IDs", targetIDs);

                        using (XSqlDataReader reader = query.ExecuteReader())
                        {
                            photos = new PhotoCollection(reader);
                        }
                    }

                    AlbumBO.Instance.ProcessKeyword(photos, ProcessKeywordMode.FillOriginalText);

                    for (int i = 0; i < denouncings.Count; i++)
                    {
                        for (int j = 0; j < photos.Count; j++)
                        {
                            if (denouncings[i].TargetID == photos[j].PhotoID)
                            {
                                denouncings[i].TargetPhoto = photos[j];
                                break;
                            }
                        }
                    }
                }
                return denouncings;
            }
        }
    protected void btnSignup2_Click(object sender, EventArgs e)
    {
        bool SignUpOkay = true;

        if (txtFirstName.Text.Trim() == string.Empty)
        {
            SignUpOkay = false;
            errTxtFirstName.Text = "<span class='formerror_msg'>No first name</span>";
        }
        else
        {
            errTxtFirstName.Text = string.Empty;
        }

        if (txtLastName.Text.Trim() == string.Empty)
        {
            SignUpOkay = false;
            errTxtLastName.Text = "<span class='formerror_msg'>No last name</span>";
        }
        else
        {
            errTxtLastName.Text = string.Empty;
        }

        if (txtPassword.Text == string.Empty)
        {
            SignUpOkay = false;
            errTxtPassword.Text = "<span class='formerror_msg'>No password</span>";
        }
        else if (txtPassword.Text != txtConfirm.Text)
        {
            SignUpOkay = false;
            errTxtPassword.Text = "<span class='formerror_msg'>Passwords do no match</span>";
        }
        else if (!RegexPatterns.TestPassword(txtPassword.Text))
        {
            SignUpOkay = false;
            errTxtPassword.Text = "minimum length 7 characters";
        }
        else
        {
            errTxtPassword.Text = string.Empty;
        }

        if (!cbTOS.Checked)
        {
            SignUpOkay = false;
            errChbTOS.Text = "<span class='formerror_msg'>You must agree to the tos</span>";
        }
        else
        {
            errChbTOS.Text = string.Empty;
        }

        if (SignUpOkay)
        {
            NewMember = (Member)Session["Member"];

            CurrentStage = MobileSignupStage.Complete;

            Database db = DatabaseFactory.CreateDatabase();
            DbConnection conn = db.CreateConnection();
            DbTransaction Transaction = null;

            try
            {
                conn.Open();
                Transaction = conn.BeginTransaction();

                NewMember.FirstName = txtFirstName.Text;
                NewMember.LastName = txtLastName.Text;


                NewMember.AccountType = 0;
                NewMember.Password = txtPassword.Text;

                NewMember.ProfilePhotoResourceFileID = 1;
                NewMember.WebMemberID = Next2Friends.Misc.UniqueID.NewWebID();
                NewMember.CreatedDT = DateTime.Now;
                NewMember.Save(db);

                // Ceate the business Account
                //if (rbBusiness.Checked)
                //{
                //    Business business = new Business();
                //    business.MemberID = NewMember.MemberID;
                //    business.CompanyName = txtCompanyName.Text;
                //    business.IndustrySector = drpIndustrySector.SelectedValue;
                //    business.YearFounded = Int32.Parse(drpYearFounded.SelectedValue);
                //    business.CompanySize = drpCompanySize.Text;
                //    business.IndustrySector = drpIndustrySector.SelectedValue;
                //    business.Save(db);

                //    IMSPlan imsPlan = new IMSPlan();
                //    imsPlan.BusinessID = business.BusinessID;
                //    imsPlan.Save(db);
                //}


                //ResourceFile.CreateUserDirectories(NewMember);
                TEMPCreateUserDirectories(NewMember);

                PhotoCollection DefaultGallery = new PhotoCollection();
                DefaultGallery.WebPhotoCollectionID = Next2Friends.Misc.UniqueID.NewWebID();
                DefaultGallery.MemberID = NewMember.MemberID;
                DefaultGallery.DTCreated = DateTime.Now;
                DefaultGallery.Name = NewMember.NickName + "'s Gallery";
                DefaultGallery.Description = "My First Gallery!";
                DefaultGallery.Save(db);

                // create a new member profile for the meber
                Next2Friends.Data.MemberProfile profile = new Next2Friends.Data.MemberProfile();
                profile.MemberID = NewMember.MemberID;
                profile.DTLastUpdated = DateTime.Now;
                profile.DefaultPhotoCollectionID = DefaultGallery.PhotoCollectionID;
                profile.Save(db);

                Message message = new Message();
                message.Body = "Welcome to Next2Friends";
                message.WebMessageID = Next2Friends.Misc.UniqueID.NewWebID();
                message.MemberIDFrom = 31;
                message.MemberIDTo = NewMember.MemberID;
                message.DTCreated = DateTime.Now;
                message.Save(db);
                message.InReplyToID = message.MessageID;
                message.Save(db);

                // create the default settings for the member
                MemberSettings settings = new MemberSettings();

                settings.NotifyNewPhotoComment = true;
                settings.NotifyNewProfileComment = true;
                settings.NotifyNewVideoComment = true;
                settings.NotifyOnAAFComment = true;
                settings.NotifyOnFriendRequest = true;
                settings.NotifyOnNewMessage = true;
                settings.NotifyOnNewsLetter = true;
                settings.NotifyOnSubscriberEvent = true;

                settings.MemberID = NewMember.MemberID;
                settings.Save(db);

                MatchProfile matchProfile = new MatchProfile();
                matchProfile.MemberID = NewMember.MemberID;
                matchProfile.Save(db);

                Device Device = new Device();
                Device.MemberID = NewMember.MemberID;
                Device.PrivateEncryptionKey = Next2Friends.Misc.UniqueID.NewEncryptionKey();
                Device.CreatedDT = DateTime.Now;
                Device.DeviceTagID = Guid.NewGuid().ToString();
                Device.Save(db);

                OnlineNow now = new OnlineNow();
                now.MemberID = NewMember.MemberID;
                now.DTOnline = DateTime.Now;
                now.Save(db);

                Session["Member"] = NewMember;
                Transaction.Commit();

                Utility.AddToLoggedIn();


            }
            catch (Exception ex)
            {
                Transaction.Rollback();
                throw ex;
            }
            finally
            {
                conn.Close();
            }
        }
        else
        {
            CurrentStage = MobileSignupStage.Stage2;
        }
    }
    /// <summary>
    /// creates a new photoCollection
    /// </summary>
    public void GetLocalGalleryByWebPhotoColletionID(string Name, string Description)
    {
        member = (Member)Session["Member"];

        PhotoCollection DefaultGallery = new PhotoCollection();
        DefaultGallery.WebPhotoCollectionID = Next2Friends.Misc.UniqueID.NewWebID();
        DefaultGallery.MemberID = member.MemberID;
        DefaultGallery.DTCreated = DateTime.Now;
        DefaultGallery.Name = Name;
        DefaultGallery.Description = Description;
        DefaultGallery.Save();
    }
Example #20
0
 public MainWindow()
 {
     InitializeComponent();
     Photos = (PhotoCollection) (Application.Current.Resources["Photos"] as ObjectDataProvider)?.Data;
     Photos.Path = Environment.CurrentDirectory + "\\images";
 }
    public void Bind(int Page)
    {
        member = (Member)Session["Member"];

        int NumberOfPhotos = Photo.GetPhotoCountPhotoCollectionID(DefaultPhotoCollectionID);

        photos = Photo.GetPhotoByPhotoCollectionIDWithJoinPager(DefaultPhotoCollectionID, Page, 10);

        PhotoCollection LocalGallery = new PhotoCollection(DefaultPhotoCollectionID);

        GalleryName = LocalGallery.Name + " (" + NumberOfPhotos + ")";
        
        // bit if a hack to get the webphotocollectionID
        photoCollections = member.PhotoCollection;
        for (int i = 0; i < photos.Count; i++)
        {
            PhotoCollection photoCol = GetLocalGalleryByPhotoColletionID(photos[i].PhotoCollectionID);
            photos[i].WebPhotoCollectionID = photoCol.WebPhotoCollectionID;
        }

        
        Pager pager = new Pager("/myphotos/",Page, NumberOfPhotos);
        pager.PageSize = 10;
        pager.MiscParameterString = (DefaultWebPhotoCollectionID != null) ? "pc=" + DefaultWebPhotoCollectionID : string.Empty;
        PagerHTML = pager.ToString();

        PhotoRepeater.DataSource = photos;
        PhotoRepeater.DataBind();
    }
Example #22
0
        private void GetPhotos()
        {
            m_AllPhotoList = AlbumBO.Instance.GetPhotos(PhotoID, out m_Album);
            m_PhotoList = new PhotoCollection();

            if (m_Album == null)
                return;

            m_TotalPhotos = m_AllPhotoList.Count;
            m_totalListPage = m_AllPhotoList.Count / listCount;
            if (m_AllPhotoList.Count % listCount > 0)
                m_totalListPage += 1;


            int i = 0;
            foreach (Photo photo in AllPhotoList)
            {
                i++;
                if (PhotoID == photo.PhotoID)
                {
                    m_CurrentPhotoNumber = i;
                    break;
                }
            }

            m_ListPage = i / listCount;
            if (i % 10 > 0)
                m_ListPage += 1;

            for (int j = (m_ListPage.Value - 1) * listCount; j < m_AllPhotoList.Count; j++)
            {
                if (m_PhotoList.Count == listCount)
                    break;
                m_PhotoList.Add(m_AllPhotoList[j]);
            }
        }
Example #23
0
        public override PhotoCollection GetPhotos(int photoID, out Album album)
        {
            using (SqlQuery query = new SqlQuery())
            {
                query.CommandText = "bx_GetPhotosAndAlbum";
                query.CommandType = CommandType.StoredProcedure;

                query.CreateParameter<int>("@PhotoID", photoID, SqlDbType.Int);

                album = null;
                using (XSqlDataReader reader = query.ExecuteReader())
                {
                    PhotoCollection photos = new PhotoCollection(reader);

                    if (reader.NextResult())
                    {
                        if (reader.Read())
                        {
                            album = new Album(reader);
                        }
                    }

                    return photos;
                }
            }
        }
Example #24
0
        public override PhotoCollection GetPhotosBySearch(AdminPhotoFilter filter, int operatorID, IEnumerable<Guid> excludeRoleIDs, int pageNumber)
        {
            using (SqlQuery query = new SqlQuery())
            {
                string sqlCondition = BuildConditionsByFilter(query, filter, operatorID, excludeRoleIDs, false);

                query.Pager.TableName = "bx_Photos";
                query.Pager.SortField = filter.Order.ToString();

                if (filter.Order != AdminPhotoFilter.OrderBy.PhotoID)
                {
                    query.Pager.PrimaryKey = "PhotoID";
                }

                query.Pager.PageNumber = pageNumber;
                query.Pager.PageSize = filter.PageSize;
                query.Pager.SelectCount = true;
                query.Pager.IsDesc = filter.IsDesc;

                query.Pager.Condition = sqlCondition;


                using (XSqlDataReader reader = query.ExecuteReader())
                {
                    PhotoCollection photos = new PhotoCollection(reader);

                    if (reader.NextResult())
                    {
                        if (reader.Read())
                        {
                            photos.TotalRecords = reader.Get<int>(0);
                        }
                    }

                    return photos;
                }
            }
        }
    public void btnNewGallery_Click(object sender, EventArgs e)
    {
        member = (Member)Session["Member"];

        PhotoCollection DefaultGallery = new PhotoCollection();
        DefaultGallery.WebPhotoCollectionID = Next2Friends.Misc.UniqueID.NewWebID();
        DefaultGallery.MemberID = member.MemberID;
        DefaultGallery.DTCreated = DateTime.Now;
        DefaultGallery.Name = txtGalleryName.Text;
        DefaultGallery.Description = txtGalleryDescription.Text;
        DefaultGallery.Save();

        GalleryItem galleryitem = new GalleryItem();
        galleryitem.WebPhotoCollectionID = DefaultGallery.WebPhotoCollectionID;
        galleryitem.Name = DefaultGallery.Name;
        galleryitem.Description = (DefaultGallery.Description.Length > 55) ? DefaultGallery.Description.Substring(0, 53) + ".." : DefaultGallery.Description;

        //DefaultPhotoCollectionID = DefaultGallery.PhotoCollectionID;

        // hack to reload photocollection
        member.PhotoCollection = null;
        GenerateGalleries();


        Bind(1);
    }
Example #26
0
        /// <summary>
        /// 获取指定相册/所有相册的所有相片
        /// </summary>
        /// <param name="albumID">指定相册,不指定就是获取所有相册的所有相片</param>
        /// <param name="isGetPrivacyType">是否获取隐私类型相册的相片</param>
        public override PhotoCollection GetPhotos(int? albumID, bool isGetPrivacyType, int pageNumber, int pageSize, ref int? count)
        {
            StringBuffer condition = new StringBuffer();
            if (albumID != null)
            {
                condition += "[AlbumID] = @AlbumID ";
            }
            if (albumID != null && !isGetPrivacyType)
            {
                condition += " AND [AlbumID] IN (SELECT [AlbumID] FROM [bx_Albums] WHERE [PrivacyType] IN (0,3)) ";
            }
            else
            {
                if (!isGetPrivacyType)
                {
                    condition += " [AlbumID] IN (SELECT [AlbumID] FROM [bx_Albums] WHERE [PrivacyType] IN (0,3)) ";
                }
            }

            using (SqlQuery query = new SqlQuery())
            {
                query.Pager.TableName = "[bx_Photos]";
                query.Pager.SortField = "[PhotoID]";
                query.Pager.PageNumber = pageNumber;
                query.Pager.PageSize = pageSize;
                query.Pager.IsDesc = true;
                query.Pager.TotalRecords = count;
                query.Pager.SelectCount = true;
                query.Pager.Condition = condition.ToString();

                query.CreateParameter<int?>("@AlbumID", albumID, SqlDbType.Int);

                using (XSqlDataReader reader = query.ExecuteReader())
                {
                    PhotoCollection photos = new PhotoCollection(reader);

                    if (count == null && reader.NextResult())
                    {
                        if (reader.Read())
                        {
                            count = reader.Get<int>(0);
                        }
                    }

                    photos.TotalRecords = count.Value;

                    return photos;
                }
            }
        }
 public PhotoGallery()
 {
     InitializeComponent();
     this.Photos = (PhotoCollection)(this.Resources["Photos"] as ObjectDataProvider).Data;
     this.Photos.Path = Environment.CurrentDirectory + "\\images";
 }
Example #28
0
        public override Hashtable GetPhotos(int[] albumids, int count)
        {
            using (SqlQuery query = new SqlQuery())
            {
                for (int i = 0; i < albumids.Length; i++)
                {
                    query.CommandText += "\r\nSELECT TOP (@Count) * FROM bx_Photos WHERE AlbumID = @AlbumID_" + i;

                    query.CreateParameter<int>("@AlbumID_" + i, albumids[i], SqlDbType.Int);
                }

                query.CreateTopParameter("@Count", count);

                Hashtable result = new Hashtable();

                using (XSqlDataReader reader = query.ExecuteReader())
                {
                    int lastAlbumID = -1;
                    PhotoCollection list = null;

                    do
                    {
                        while (reader.Read())
                        {
                            Photo photo = new Photo(reader);

                            if (lastAlbumID != photo.AlbumID)
                            {
                                list = new PhotoCollection();
                                lastAlbumID = photo.AlbumID;

                                result.Add(lastAlbumID, list);
                            }

                            list.Add(photo);
                        }

                    } while (reader.NextResult());

                    return result;
                }
            }
        }
 public PhotoCollection GetPhotos()
 {
     if (photos == null) {
                         var photos_xml = request_manager.GetString (link_photos);
                         photos = new PhotoCollection (this, photos_xml);
                 }
                 return photos;
 }
Example #30
0
        protected override void OnLoad(EventArgs e)
        {
            base.OnLoad(e);

            if (PhotoID < 1)
            {
                ShowError(new InvalidParamError("id"));
            }

            if (Album == null)
                ShowError("您要查看的图片不存在或已被删除");


            pageNumber = _Request.Get<int>("page", 1);

            if (_Request.IsClick("submitPassword"))
            {
                ProcessPassword();
            }

            using (ErrorScope es = new ErrorScope())
            {
                bool canVisit = AlbumBO.Instance.CanVisitAlbum(My, Album);
                if (canVisit == false)
                {
                    es.CatchError<ErrorInfo>(delegate(ErrorInfo error)
                    {
                        if (IsAjaxRequest)
                        {
                            AlertError(error.Message);
                            m_Photo = new Photo();
                            m_PhotoList = new PhotoCollection();
                            m_PhotoList.Add(m_Photo);
                            return;
                        }
                        if (error is NoPermissionVisitAlbumBeacuseNeedPasswordError)
                        {
                            IsShowPasswordBox = true;
                        }
                        else
                            ShowError(error.Message);

                    });
                }
            }



            m_CommentPageSize = 10;



            if (_Request.IsClick("addcomment"))
                AddComment();

            //m_PhotoList = AlbumBO.Instance.GetPhotos(m_Photo.AlbumID, 1, m_Photo.Album.TotalPhotos);

            m_CommentList = CommentBO.Instance.GetComments(Photo.PhotoID, CommentType.Photo, pageNumber, m_CommentPageSize, false, out m_TotalCommentCount);

            UserBO.Instance.WaitForFillSimpleUsers<Comment>(m_CommentList);

            SetPager("commentlist", null, pageNumber, m_CommentPageSize, m_TotalCommentCount);

            if (IsSpace == false)
            {
                AddNavigationItem(FunctionName, BbsRouter.GetUrl("app/album/index"));
                AddNavigationItem(string.Concat("我的", FunctionName), BbsRouter.GetUrl("app/album/index"));
                AddNavigationItem(Album.Name, BbsRouter.GetUrl("app/album/list", "id=" + Album.AlbumID));
                AddNavigationItem(Photo.Name);
            }
            else
            {
                AddNavigationItem(string.Concat(AppOwner.Username, "的空间"), UrlHelper.GetSpaceUrl(AppOwnerUserID));
                AddNavigationItem(string.Concat("主人的", FunctionName), UrlHelper.GetPhotoIndexUrl(AppOwnerUserID));
                AddNavigationItem(Album.Name,UrlHelper.GetAlbumViewUrl(Album.AlbumID));
                AddNavigationItem("查看图片");
            }
  
        }
Example #31
0
        protected void Page_Load(object sender, EventArgs e)
        {
            if (AlbumID < 1)
                ShowError(new InvalidParamError("id"));

            if (Album == null)
                ShowError("您要查看的相册不存在");
			

			if (_Request.IsClick("Save") || _Request.IsClick("SaveAndUpload"))
			{
				SavePhotos();
			}
			else if (_Request.IsClick("Move"))
			{
				MovePhotos();
			}
			else if (_Request.IsClick("Cover"))
			{
				SetAlbumCover();
			}
			else if(_Request.IsClick("DeleteAlbum"))
			{
				DeleteAlbum();
			}

            if (_Request.IsClick("submitPassword"))
            {
                ProcessPassword();
            }

            using (ErrorScope es = new ErrorScope())
            {
                bool canVisit = AlbumBO.Instance.CanVisitAlbum(My, Album);
                if (canVisit == false)
                {
                    es.CatchError<ErrorInfo>(delegate(ErrorInfo error)
                    {
                        if (error is NoPermissionVisitAlbumBeacuseNeedPasswordError)
                            IsShowPasswordBox = true;
                        else
                            ShowError(error.Message);
                    });
                }
            }






            ////指定好友可见  暂时还没有该功能
            //if (Article.PrivacyType == MaxLabs.bbsMax.Enums.PrivacyType.AppointUser)
            //{ 
            //}



            m_PageNumber = _Request.Get<int>("page", Method.Get, 1);

            m_PhotoListPageSize = 20;

            if (string.IsNullOrEmpty(_Request.Get("photoids")))
            {
                m_PhotoList = AlbumBO.Instance.GetPhotos(AlbumID, null, m_PageNumber, m_PhotoListPageSize);
                //m_Album = AlbumBO.Instance.GetAlbumForVisitWithPhotos(MyUserID, m_AlbumID, null, null, m_PageNumber, m_PhotoListPageSize, out m_PhotoList);
            }
            else
            {
                int[] photoids = StringUtil.Split<int>(_Request.Get("photoids"));

                m_PhotoList = AlbumBO.Instance.GetPhotos(AlbumID, photoids, m_PageNumber, m_PhotoListPageSize);
                //m_Album = AlbumBO.Instance.GetAlbumForVisitWithPhotos(MyUserID, m_AlbumID, null, photoids, m_PageNumber, m_PhotoListPageSize, out m_PhotoList);
            }


			if (m_PhotoList != null)  
                m_TotalPhotoCount = m_PhotoList.TotalRecords;

            SetPager("pager2", null, m_PageNumber, PhotoListPageSize, TotalPhotoCount);

            if (IsSpace == false)
            {
                AddNavigationItem(FunctionName, BbsRouter.GetUrl("app/album/index"));
                AddNavigationItem(string.Concat("我的", FunctionName), BbsRouter.GetUrl("app/album/index"));
                AddNavigationItem(Album.Name);
            }
            else
            {
                AddNavigationItem(string.Concat(AppOwner.Username, "的空间"), UrlHelper.GetSpaceUrl(AppOwnerUserID));
                AddNavigationItem(string.Concat("主人的", FunctionName),UrlHelper.GetPhotoIndexUrl(AppOwnerUserID));
                AddNavigationItem(Album.Name);
            }
        }