Commit Graph
2269 Commits
Author SHA1 Message Date
Bharat Mediratta 2551b31b8f Merge pull request #106 from shadlaws/fix_1945
#1945 - Extend legal_file helper functions.
2013-01-29 09:10:06 -08:00
Bharat Mediratta 3b0de7791b Merge pull request #107 from shadlaws/fix_1969
#1969 - Give graphics events the ability to override the standard process
2013-01-29 09:01:31 -08:00
shadlaws 5fca371a61 #1945 - Extend legal_file helper functions.
- Added get_types_by_extension function, which is a merged version of get...types_by_extension functions (similar to get_extensions).
- Added optional extension argument to get...extensions functions similar to get...types_by_extension functions.
- Added unit tests.  Now, every legal_file function has one.
- Restructured helper file to include caches.
- Added array_unique to get...types (derived from get...types_by_extension, which can be many-to-one).
- Edited server_add, uploader, and item model to use new functionality.
2013-01-28 23:31:18 +01:00
shadlaws 1313a02bf4 #1971 - Make resequence_child_weights_test unit test more reliable.
- Set the sort_column of the parent album to id, which has no possibility of being identical between the two photos.
- Now, the reweighting will reverse the order even if they were created during the same second.
2013-01-28 14:47:26 +01:00
shadlaws 9e20a30d22 #1969 - Give graphics events the ability to override the standard process.
While graphics_rotate, graphics_resize, and graphics_composite events already exist, they don't have the ability to *override* the standard process.
This makes it a bit tricky when you want to replace the standard procedure with another (e.g. use jpegtran to perform lossless jpg rotation).
Solution:
- make a temp filename.
- tell the events to use it as the output file.
- if an event makes something, use it and skip the standard process.
2013-01-27 21:55:24 +01:00
Bharat Mediratta e957c97c94 Add a key on relative_path_cache in the items table to improve performance on installs
that use File_Proxy heavily.  Fixes #1920.
2013-01-27 15:35:42 -05:00
Bharat Mediratta b06c0f4890 Merge pull request #104 from shadlaws/fix_1966
#1966 - "Fix your Gallery" shows 60/59 items completed.
2013-01-26 11:00:56 -08:00
shadlaws 603db40459 #1966 - "Fix your Gallery" shows 60/59 items completed.
- Fixed counter in gallery_task::fix that was often one too many.

For FIX_STATE_RUN_MISSING_ACCESS_CACHES, changed this:
$stack = explode(" ", $task->get("stack"));
To this:
$stack = array_filter(explode(" ", $task->get("stack")));
2013-01-26 09:08:03 +01:00
shadlaws cc2aed656c #1946, 1947 - Make altered names/slugs more user-friendly, make conflict-finding code check filenames with no extensions
- Reduced from four places that alter names/slugs to two (one to populate empty slugs, one to handle conflicting names/slugs).
- For empty slugs, fill with generic human-readable name (e.g. "photo") instead of random value.
- For conflicting names/slugs, add suffix that's sequential (e.g. "-01"), only using random after 99 conflicts.
- Made conflict-finding code check filenames with no extensions.
- Renamed _randomize_name_or_slug_on_conflict to _check_and_fix_conflicts.
- Added unit tests.  Also cleaned up existing unit tests to reflect new logic and removed a redundant test.
- Added installer logic to correct existing items now considered in conflict.
- Revised gallery_task to look for duplicate names based on new criteria.
2013-01-26 08:38:31 +01:00
Bharat Mediratta 96f4a5ea85 Merge pull request #103 from shadlaws/fix_1965
#1965 - Improve sanity checks and copy/convert/process logic for rotate and resize
2013-01-25 15:26:27 -08:00
shadlaws 212944e1ea #1951 - Make metadata generation more flexible (photo and movie helpers).
- added photo_get_file_metadata and movie_get_file_metadata events
- modified photo::get_file_metadata and movie::get_file_metadata to use them
- ensure that non-readable files throw exceptions
- redirected other photo metadata calls in core to photo::get_file_metadata (the helper function already exists, but in many places getimagesize is still called directly)
- added some unit tests (neither of the functions above had one)
2013-01-26 00:04:55 +01:00
shadlaws c2d1c2407f #1965 - Improve sanity checks and copy/convert/process logic for rotate and resize.
- resize: ensured that resize is skipped *only* if the metadata is valid or the options are well-defined and would upscale. Then, if resize is skipped, check to see if it still needs to be converted. Previous conditions would allow a small PNG to get copied to a JPG, and would allow a corrupted JPG to be copied to the output.
- rotate: add checks for empty file or empty options.
- use get_file_metadata instead of direct getimagesize call.
- add unit tests for rotate and resize, including some for corrupted input files and missing options.
2013-01-25 23:47:08 +01:00
shadlaws 48bd19808c #1956 - Escape LIKE queries (for _ and %).
In MySQL queries, _ and % characters are treated as wildcards (similar to ? and *, respectively).
- Added escape_for_like function to MY_Database.php
- Added unit test to Database_Test
- Corrected the five unescaped instances in the code using this function.
2013-01-25 08:47:29 +01:00
Bharat Mediratta e8b7e155d5 Follow-on to b507681427 - add a default
value for lock_timeout so that folks who get the latest code but don't
run the upgrader don't get burned by a SQL error.
2013-01-24 23:48:07 -05:00
Bharat Mediratta 0353578630 Merge branch 'master' of github.com:gallery/gallery3 2013-01-24 18:14:28 -05:00
Bharat Mediratta 86a2759062 If profiling is enabled, dump out profiling data instead of proxied
images so that we can see how efficient our proxying is.  Follow-on
for #1959.
2013-01-24 18:14:14 -05:00
Bharat Mediratta 6830ac4542 Merge pull request #99 from shadlaws/fix_1955
#1955 - Make unit test photos unique.
2013-01-24 12:46:26 -08:00
shadlaws 126727b4f2 #1955 - Make unit test photos unique.
- Added test::random_unique_photo and test::random_unique_photo_unsaved to uniquify test photos.
- Uniquified the black dot of test.jpg by coloring it with the six-digit hex code already used to name the random photos (e.g. "name_a48801.jpg").
- Modified four tests in Item_Model_Test that check photo file contents to use new functions to guarantee uniqueness.
2013-01-24 15:56:13 +01:00
shadlaws 031dd3bd6f #1960 - Add unit test to look for extra spaces at end of line
- Added no_extra_spaces_at_end_of_line_test to File_Structure_Test.
- Updated Gallery_Filters to exclude testing code that isn't ours.
- Removed existing extra spaces.  New test now passes.
2013-01-24 12:03:05 +01:00
Bharat Mediratta aa8fffcd8f Extract reweighting logic out of Organize_Controller into
item::reweight_all_children as an API and write a test for it.  Work
in progress on #1914.
2013-01-23 21:33:19 -05:00
Bharat Mediratta 34198e71d3 Add a cache buster to all data_rest urls, add caching headers to all
data_rest responses, and check cache validity.  Fixes #1909.
2013-01-23 20:50:54 -05:00
Bharat Mediratta cc926cb9e1 After finding a test in Item_Model_Test that didn't end in the string "_test" and
fixing it in 9ba9f39531 I decided to write a test to make
sure that we don't have any other overlooked tests.  We don't.
2013-01-23 18:58:37 -05:00
Bharat Mediratta bc5dbd812a Fix comment typo. 2013-01-23 18:56:30 -05:00
Bharat Mediratta e6783b7aa7 Update golden files after 80d6a895ed 2013-01-23 18:28:28 -05:00
Bharat Mediratta 9ba9f39531 Add a "can_add" permission bit similar to the "can_edit" bit to the RESTful array
representation of Item_Model.  Fixes #1903.
2013-01-23 18:24:31 -05:00
Bharat Mediratta a1a6600457 Enable the profiler and debug output if var/PROFILE exists. This
provides a quick/easy way for server admins to provide profile output.
Fixes #1959.
2013-01-23 18:03:09 -05:00
Bharat Mediratta eefc9d5553 Use the thumb proportion from the first item in an album if the album has children. Fixes #1958. 2013-01-23 14:03:44 -05:00
Bharat Mediratta e8302ffce5 Merge pull request #98 from shadlaws/fix_1954
#1954 - Skip buffer calls for unit tests of file_proxy and data_rest.
2013-01-22 17:57:58 -08:00
Bharat Mediratta 49f6ce2d94 gallery.menalto.com -> galleryproject.org
codex.gallery2.org -> codex.galleryproject.org

Fixes #1957.
2013-01-22 18:39:24 -05:00
shadlaws 8436e16b2f #1954 - Skip buffer calls for unit tests of file_proxy and data_rest.
Moved the "if (TEST_MODE)" statement before the buffer calls in file_proxy and data_rest.
This has no impact on normal use, but will make the unit tests more compatible with different server/PHP configurations.
Note: We do not have to skip setting the headers, which means we can build unit tests around them if we wish.
2013-01-21 10:45:34 +01:00
Bharat Mediratta d45a737779 Update copyright to 2013. Fixes #1953. 2013-01-21 01:22:01 -05:00
Bharat Mediratta 61eebe13c9 Merge pull request #95 from shadlaws/fix_1950
#1950 - Replace bogus file overwrites from item model unit test.
2013-01-20 22:06:12 -08:00
Bharat Mediratta 8dc34dade8 Add unit tests for data_rest. While I'm in there, get rid of the
clause that returns nothing when the album has no album cover - we'll
fail before that if the album's thumbnail is missing, and if it's not
missing then we'll have something to serve even if it's out of date.
2013-01-21 00:52:52 -05:00
Bharat Mediratta f1d2a8e871 Add a long overdue test for File_Proxy_Controller that tests all the various
edge case behaviors.  It doesn't cover the various headers, but it does cover
the permission based code paths.
2013-01-20 23:54:01 -05:00
shadlaws 14b02a5b12 #1950 - Replace bogus file overwrites from item model unit test.
- modified rename_photo_test, rename_album_test, move_album_test, move_photo_test
- unit tests still test file system integrity and pass
2013-01-20 10:01:41 +01:00
shadlaws 1927dd00e4 #1949 - Fix album thumb mime types given by data_rest and file_proxy
Correct result: always "image/jpeg"
Old data_rest result: mime of cover item
Old file_proxy result: mime of album item (null)
2013-01-20 08:34:12 +01:00
Bharat Mediratta 52ab0e9988 Merge pull request #89 from shadlaws/fix_1942
#1942 - Make data_rest and file_proxy more consistent
2013-01-19 22:26:34 -08:00
Bharat Mediratta f215a417f1 Merge pull request #88 from shadlaws/fix_1941
#1941, 1948 - Fix possible warnings in movie and graphics helpers, add functions to convert between seconds and hh:mm:ss.dd (and their unit tests).
2013-01-19 21:41:45 -08:00
Bharat Mediratta a06abe32b0 Simplify get_photo_types_by_extension_test and get_movie_types_by_extension_test. 2013-01-20 00:39:58 -05:00
Bharat Mediratta 35bb5c4a1c Merge pull request #93 from shadlaws/fix_1944
#1944 - Fix possible warnings in legal_file::get_photo_types_by_extension and legal_file::get_movie_types_by_extension.
2013-01-19 21:34:39 -08:00
Bharat Mediratta 3a71813f35 Change the logic for finding controllers to use glob() but drop anything
that we can find is git-ignore'd.
2013-01-20 00:24:08 -05:00
shadlaws 592eff0e5a #1942 - Make data_rest and file_proxy more consistent - several minor documentation/formatting changes.
No actual functionality changed here.
2013-01-19 08:40:19 +01:00
shadlaws ea8219e1d4 #1941, 1948 - Fix possible warnings in movie and graphics helpers, add functions to convert between seconds and hh:mm:ss.dd.
Also add unit tests for new movie helper functions.
2013-01-19 00:59:55 +01:00
shadlaws e2a2a5ce81 #1944 - Fix possible warnings in legal_file::get_photo_types_by_extension and legal_file::get_movie_types_by_extension.
Added unit tests for these two functions, too.
2013-01-19 00:52:13 +01:00
shadlaws 3a9009492e #1943 - Make legal_file::change_extension more robust.
Previously would fail with dots in the directory but no extension.  Added unit tests to verify the new change works.
2013-01-18 20:06:05 +01:00
Bharat Mediratta 61724f78da Update golden files. 2013-01-17 15:22:50 -05:00
Bharat Mediratta d04080c7be Follow-on to 94b26e506c - make the new legal_file
functions more robust when passed an unknown extension.  Fixes Item_Model_Test.
2013-01-17 15:05:46 -05:00
Bharat Mediratta 9d684b7b83 Fix up some indentation. 2013-01-14 12:52:47 -05:00
shadlaws ff6688b48b #1919 - change convert -v to convert -version 2013-01-01 15:47:04 +01:00
shadlaws 8300c867a1 #1931, #1932, #1933, #1934 - movieplayer view and movie_img function in items model
Many changes to movieplayer view and movie_img function in items model:
- include control bar height when dimensioning movie player
- provide a default "guess" at height and width when they are set as zero in items table
- resize movie player once the video is loaded based on its actual metadata
- add get_movie_img event to provide flexibility for altering/replacing the default Flowplayer v3

--HG--
extra : rebase_source : 5d1e9bb66ebf3e3fed5e1b9ee63790a204f21450
2012-12-30 10:03:36 +01:00