Commit Graph
47 Commits
Author SHA1 Message Date
Tim Almdal 4132d6c55e Put quotes around the href param (href="#") 2009-07-11 15:47:04 -07:00
Tim Almdal f1b2a14f4f Add a title attribute to the li of a menu 2009-07-10 23:45:29 -07:00
Bharat Mediratta 86a7b15d20 Compact all menus. This fixes the problem that the new [Options]
thumb menu shows up when it has nothing in it.
2009-07-10 10:39:59 -07:00
Tim Almdal f6d847739a Update the source so the third party code passes the File Structure Test 2009-07-03 14:18:45 -07:00
Tim Almdal b6e5bf6eaa Fix for ticket #400: Add HTMLPurifier to gallery3 and change p::clean() to call HTMLPurifier->purify() 2009-07-03 12:56:29 -07:00
Bharat Mediratta a674170bf7 2 fixes:
1) Include the url in the cache key so that if the Gallery moves, we
   don't use old cached entries.

2) Use the relative path to files in the comments that we embed in our
   files so that we don't leak local paths.
2009-07-01 22:55:43 -07:00
Tim Almdal 6e80330e19 Remove the testing code to force rebuilding the cache. 2009-06-29 21:16:42 -07:00
Bharat Mediratta 77a78b4990 Revert to serializing and deserializing data. The cache table can't
accept PHP constructs like arrays (the tests were choking on this).

Update tests to reflect the new `key` column.
2009-06-29 20:53:55 -07:00
Bharat Mediratta b579db5173 Oops, "head" => "admin_head" to make the admin dashboard work. 2009-06-29 20:08:35 -07:00
Bharat Mediratta 95b900d4f4 Fix some bugs in the combined JS/CSS code (most of which I introduced
in my last refactor):

1) Actually combine the JS (I was only combining the CSS)
2) Add line breaks between the files and comment them so that we can
   find a specific file inside the blob.
3) Add an HTML comment to help developers figure out why they can't
   find their CSS/JS.
2009-06-29 19:11:59 -07:00
Bharat Mediratta 325203e1ca Add a media type using the most common media type from our CSS. This
doesn't fix the problem that we need to support multiple media types
(the original code had superfish using just "screen", and some other
deviations).

There's no code yet to support multiple media types, but it would not
be too difficult to create buckets based on media.
2009-06-29 18:27:29 -07:00
Bharat Mediratta fa8ca2f7ad Refactor combine_xxx() functions together into combine_files() and use
html functions to generate the resulting elements.  Add phpdoc.
2009-06-29 18:12:53 -07:00
Tim Almdal 86596f9595 Merge branch 'master' of git@github.com:gallery/gallery3 2009-06-29 15:04:15 -07:00
Tim Almdal 34c76c0906 A Combined javascript seems to work.
1) CSS files are added to the combined version by use of $theme->css() or $theme->css_theme() methods
2) url references in the css are converted to full paths as opposed to relative
3) @import statements in the css are resolved as well.
4) need to move the [if IE] statements into the css files so the will be honored in the browser. currently the ie fix css are always included.
2009-06-29 12:32:11 -07:00
Bharat Mediratta 16d4922e3a Remove unused $theme_relative arg from theme_script(). 2009-06-29 09:07:29 -07:00
Tim Almdal 6ec293dfe7 *Note* work in progress.
Implement the combined css functionality.  Local url references and replace with absolute urls instead of relative.
2009-06-29 08:24:42 -07:00
Tim Almdal 10b4eda6f0 Merge branch 'master' of git@github.com:gallery/gallery3
Conflicts:
	modules/gallery/libraries/Theme_View.php
	themes/admin_default/views/admin.html.php
2009-06-29 06:44:05 -07:00
Tim Almdal 42c82ef7f0 Temporary checkin to allow merge with trunk... don't integrate 2009-06-29 06:08:50 -07:00
Bharat Mediratta 6e8a8c53e6 Rename $theme->url() to $theme->theme_url() for consistency wiht
$theme->theme_script().
2009-06-28 19:49:48 -07:00
Bharat Mediratta c4f991bb7d Clean up the combined javascript change and refactor out the
Gallery_View base class from Theme_View and Admin_View.

1) Move all the theme specific jquery stuff from gallery_theme::head()
and admin_head() into the theme files.  Use $theme->script() as
appropriate.

2) Get rid of the extra boolean on $theme->url() that we were using so
that we could call $theme->script($theme->url(...)) -- add
$theme->theme_script() instead (poorly named, but still clearer than
what we had before)

3) Fix the bug that combined scripts didn't work at all in the admin
theme.

4) Get rid of $theme->display() in favor of new View(...)
2009-06-28 19:45:11 -07:00
Tim Almdal d90e30c378 Rename the combined javascript controller from javascript/combined to combined/javascript. 2009-06-28 17:07:12 -07:00
Bharat Mediratta fcc57a4182 Modify the cache table to make id the primary key for consistency with
other gallery 3 tables.  Update the driver to match, add more upgrader
code, update the installer block and change the gallery module version
to 6.
2009-06-28 16:48:29 -07:00
Bharat Mediratta aa31e1f009 Tweak the cache implementation
1) Drop the *_modified key, we don't really need it.  The modification date is not
   relevant to our browser caching strategy.
2) Fix multiple issues with the Expires header and just hardcode it to the biggest
   possibly value for code clarity.
3) print the $content out directly instead of using fwrite
4) Minor cleanups in the installer.
2009-06-28 16:24:51 -07:00
Tim Almdal bf26ca727e Change the combined javascript to use the new caching functionality and respect the HTTP_IF_MODIFIED_SINCE header request. 2009-06-28 15:30:13 -07:00
Tim Almdal 7a3310e91b Change the cache column of the caches table to a large blob. This fixes ticket #485 and gives us the extra adavantage of not having to serialize the data (as the database driver handles that for us) 2009-06-28 13:14:47 -07:00
Tim Almdal a0c07d4b54 Clean up code (i.e. preamble, tabs) from the caching implementation so the unit tests pass 2009-06-28 07:49:35 -07:00
Tim Almdal 2d38370ec4 The rest of the caching driver implementation that i somehow forgot. 2009-06-27 23:34:07 -07:00
Tim Almdal 4707a97b82 Merge branch 'master' of git@github.com:gallery/gallery3 2009-06-27 16:57:38 -07:00
Bharat Mediratta aad0dd357f Create a new thumb_menu() and convert Digibug over to use it.
1) Eliminate digibug_album.html

2) Get rid of the $(document).ready() in digibug.js and rename popUp() to
   digibug_popup() then just make direct calls to digibug_popup() in the
   menu urls.
2009-06-27 16:29:09 -07:00
Tim Almdal 11f08ee439 Implement the combined javascript controller. 2009-06-26 21:42:02 -07:00
Tim Almdal 4cec020163 Create a theme_view function script which allows modules in the head or admin_head functions to specify javascript files that are required for this page.
In this commit, these script files are expressed at the end of the head or admin_head calls and appended to the beginning of the block stack.  In a future commit these will be combined and gzipped for download.
2009-06-26 14:37:15 -07:00
Tim Almdal 42a5bd20a5 1) Move the generation of script tags to gallery_theme::head and gallery_theme::admin_head. This allows us to potentially manage the scripts like we do in g2 (single file and compressed)
2) Change Theme_View::_call to always call the gallery_theme::$function first.
2009-06-26 07:51:29 -07:00
Tim Almdal a6a9b256ae Correct the "inappropriate intimacy" smell that bharat's refined senses pick up 2009-06-17 13:34:18 -07:00
Tim Almdal 5b767b6443 Fix for ticket #366
Move the creation of the setting menu back to gallery_menu::admin, now that
there is a mechanism to remove empty menu items
2009-06-17 06:42:31 -07:00
Tim Almdal fbefdd5556 Fix for ticket #366
1) Stored the menu element type in the menu element
2) Scanned the menu before display removing any empty sub menus.
Went with the removal approach because there will more users than developers
2009-06-17 06:14:36 -07:00
Bharat Mediratta ab38c92771 Refactor common xxx_menu() code into private _menu() helper. 2009-06-16 13:34:42 -07:00
Bharat Mediratta 79582ee5bf Fix up the titles in the default theme. They've been broken for a
while.  This fixes ticket #342.

The bug is that we were using $item instead of $theme->item().  But we
were also not special casing tags properly, and they are effectively
first class citizens (at least for now) so treat them properly.  Also,
set page_title by default in the theme so that we don't have to do an
empty() check on it (makes the theme easier to read) and move the
title out of Tags_Controller so that the theme has more control over
it.
2009-06-15 18:15:41 -07:00
Bharat Mediratta 1b656be713 Create a sidebar for tag pages
Move the <link> for the container feed (either gallery/album/<id> or
tag/tag/<id>) back into gallery_theme
2009-06-14 22:27:26 -07:00
Bharat Mediratta f7a720d2e8 Rename main_element_attributes() callback to body_attributes() to be
more intuitive for themers.
2009-06-08 23:17:28 -07:00
Andy Staudacher 0e415dae9b Preliminary BiDi support (needs *a lot* of tweaking) 2009-06-06 15:24:14 -07:00
Bharat Mediratta 66c6c3df0e Convert single quotes to double quotes. 2009-06-04 21:43:21 -07:00
Bharat Mediratta e834c4ca24 Have server_add turn the "Add Photo" menu option into a dropdown and
make "Add from Server" a 2nd option there.

This requires adding the Menu::remove() API function.
2009-06-02 15:46:05 -07:00
Andy Staudacher 1cfed1fac1 Extend L10n client to provide UI for plural translation.
Ticket 148.
2009-06-02 00:43:04 -07:00
Bharat Mediratta 43abcd9386 Security pass over all controller code. Mostly adding CSRF checking
and verifying user permissions, but there are several above-the-bar
changes:

1) Server add is now only available to admins.  This is a hard
   requirement because we have to limit server access (eg:
   server_add::children) to a user subset and the current permission
   model doesn't include that.  Easiest fix is to restrict to admins.
   Got rid of the server_add permission.

2) We now know check permissions at every level, which means in
   controllers AND in helpers.  This "belt and suspenders" approach will
   give us defense in depth in case we overlook it in one area.

3) We now do CSRF checking in every controller method that changes the
   code, in addition to the Forge auto-check.  Again, defense in depth
   and it makes scanning the code for security much simpler.

4) Moved Simple_Uploader_Controller::convert_filename_to_title to
   item:convert_filename_to_title

5) Fixed a bug in sending notification emails.

6) Fixed the Organize code to verify that you only have access to your
   own tasks.  In general, added permission checks to organize which had
   pretty much no validation code.

I did my best to verify every feature that I touched.
2009-06-01 22:40:22 -07:00
Bharat Mediratta 8d2782ad1d Flush the model cache as appropriate every time we call ORM::save().
Fixes ticket #301
2009-05-28 00:45:00 -07:00
Bharat Mediratta 88a3d43ba9 Update all references to the core application to now point to the
gallery module.  This type of mass update is prone to some small bugs.
2009-05-27 16:17:29 -07:00
Bharat Mediratta 28b41056e3 Restructure things so that the application is now just another module.
Kohana makes this type of transition fairly straightforward in that
all controllers/helpers/etc are still located in the cascading
filesystem without any extra effort, except that I've temporarily
added a hack to force modules/gallery into the module path.

Rename what's left of "core" to be "application" so that it conforms
more closely to the Kohana standard (basically, just
application/config/config.php which is the minimal thing that you need
in the application directory)

There's still considerable work left to be done here.
2009-05-27 15:07:27 -07:00