/// <summary> /// Gets a list of a users photos which are not in a set. /// </summary> /// <param name="perPage">Number of photos per page.</param> /// <param name="page">The page number to return.</param> /// <param name="extras"><see cref="PhotoSearchExtras"/> enumeration.</param> /// <returns><see cref="PhotoCollection"/> instance containing list of photos.</returns> public PhotoCollection PhotosGetNotInSet(int page, int perPage, PhotoSearchExtras extras) { var options = new PartialSearchOptions(); options.PerPage = perPage; options.Page = page; options.Extras = extras; return(PhotosGetNotInSet(options)); }
/// <summary> /// Returns a list of your photos with no tags. /// </summary> /// <param name="extras">A comma-delimited list of extra information to fetch for each returned record.</param> /// <param name="page">The page of results to return. If this argument is omitted, it defaults to 1.</param> /// <param name="perPage">Number of photos to return per page. If this argument is omitted, it defaults to 100. The maximum allowed value is 500.</param> /// <returns>A <see cref="PhotoCollection"/> class containing the list of photos.</returns> public PhotoCollection PhotosGetUntagged(int page, int perPage, PhotoSearchExtras extras) { var o = new PartialSearchOptions(); o.Page = page; o.PerPage = perPage; o.Extras = extras; return(PhotosGetUntagged(o)); }
/// <summary> /// Gets a list of the authenticated users photos which are not in a set. /// </summary> /// <param name="options">A selection of options to filter/sort by.</param> /// <returns>A collection of photos in the <see cref="PhotoCollection"/> class.</returns> public PhotoCollection PhotosGetNotInSet(PartialSearchOptions options) { CheckRequiresAuthentication(); var parameters = new Dictionary <string, string>(); parameters.Add("method", "flickr.photos.getNotInSet"); UtilityMethods.PartialOptionsIntoArray(options, parameters); return(GetResponseCache <PhotoCollection>(parameters)); }
/// <summary> /// Adds the partial options to the passed in <see cref="Hashtable"/>. /// </summary> /// <param name="options">The options to convert to an array.</param> /// <param name="parameters">The <see cref="Hashtable"/> to add the option key value pairs to.</param> public static void PartialOptionsIntoArray(PartialSearchOptions options, Dictionary <string, string> parameters) { if (options == null) { throw new ArgumentNullException("options"); } if (parameters == null) { throw new ArgumentNullException("parameters"); } if (options.MinUploadDate != DateTime.MinValue) { parameters.Add("min_uploaded_date", UtilityMethods.DateToUnixTimestamp(options.MinUploadDate).ToString()); } if (options.MaxUploadDate != DateTime.MinValue) { parameters.Add("max_uploaded_date", UtilityMethods.DateToUnixTimestamp(options.MaxUploadDate).ToString()); } if (options.MinTakenDate != DateTime.MinValue) { parameters.Add("min_taken_date", DateToMySql(options.MinTakenDate)); } if (options.MaxTakenDate != DateTime.MinValue) { parameters.Add("max_taken_date", DateToMySql(options.MaxTakenDate)); } if (options.Extras != PhotoSearchExtras.None) { parameters.Add("extras", options.ExtrasString); } if (options.SortOrder != PhotoSearchSortOrder.None) { parameters.Add("sort", options.SortOrderString); } if (options.PerPage > 0) { parameters.Add("per_page", options.PerPage.ToString(System.Globalization.NumberFormatInfo.InvariantInfo)); } if (options.Page > 0) { parameters.Add("page", options.Page.ToString(System.Globalization.NumberFormatInfo.InvariantInfo)); } if (options.PrivacyFilter != PrivacyFilter.None) { parameters.Add("privacy_filter", options.PrivacyFilter.ToString("d")); } }