Commit Graph
37 Commits
Author SHA1 Message Date
Bharat Mediratta c67234974d Refactor site admin menu into a theme function and build the menus in
the various modules.  In the process, rename xxx_menu::site_navigation() to just
xxx_menu::site().  And add xxx_menu::admin().

The menus are the same as before, but I changed the HTML to be
consistent with the way that we do it in the regular site, and this
broke the superfish styles.  I don't know how to fix this.. help me
Chad!
2008-12-18 07:32:34 +00:00
Chad Kieffer 9fa566a1c9 Added label to add tag form input 2008-12-17 01:19:13 +00:00
Tim Almdal fc3fd3321d Add a permissions check to determine if the active user has edit permission on the item in order to display the tag add form 2008-12-13 07:49:27 +00:00
Chad Kieffer 26a512c352 Grouped inline form styles. No longer using gInline class in favor of specific form IDs that can be styled differently depending on which container they appear. Added gDescription class, dropped gUnderState for semantics. CSS cleanup. 2008-12-01 01:55:50 +00:00
Chad Kieffer 6c2869f822 Changed CSS organization, removed form section. Moved generic form CSS up to top of sheet and specific form styles to be adjacent to related content. This should ensure inheritance works generic down to specific. Removed #gAddTags in favor of #gTags form. 2008-11-29 21:30:30 +00:00
Bharat Mediratta 9b9bdce821 Fix another bug caused by moving this from tag to tag_event 2008-11-29 09:53:38 +00:00
Bharat Mediratta 1b78f33444 Fix a bug where we were listening to the wrong event. 2008-11-29 09:49:51 +00:00
Bharat Mediratta 8b6ed6c477 Create module::event() which runs Gallery events. It works by
convention.  To respond to the "photo_created" event in the gmaps
module, you create modules/gmaps/helpers/gmaps_event.php containing
class gmaps_event which has function photo_created.

Renamed all events from gallery.foo.bar to foo_bar
Updated tag module to use new convention.
2008-11-28 19:37:01 +00:00
Bharat Mediratta 1b1d385294 Check for APP13 before using it 2008-11-28 18:41:11 +00:00
Tim Almdal a7f6efa2f2 When an image is uploaded (i.e. created) the tag module will now extract any iptc keywords and add them as image tags. 2008-11-28 18:04:59 +00:00
Bharat Mediratta 5672fbea1e Rename tag_block_cloud.html.php to tag_cloud.html.php 2008-11-28 07:05:11 +00:00
Tim Almdal 3ad9b6174a Add event plumbing to allow the tag module to be notified when a photo is created. Eventually this will be used to parse the image meta data and extract tags; 2008-11-28 00:19:08 +00:00
Bharat Mediratta d909fc1070 Make tags look a little better. 2008-11-27 10:25:50 +00:00
Bharat Mediratta c95c17b133 Centralize logging around installing/uninstalling modules. 2008-11-27 09:45:26 +00:00
Bharat Mediratta 3992dad486 Move form generation off into tag::get_add_form(). We can't use a controller to generate the form (it's incompatible with our REST model where controllers print stuff) 2008-11-27 06:25:21 +00:00
Bharat Mediratta 72d16756b1 Refactor cloud generation into a helper so that we can call it from
Tags_Controller::_index().  This enables our Ajax code to reload the
tags block after we submit a new tag, so update the JS to do that
properly.
2008-11-27 05:37:20 +00:00
Bharat Mediratta 5447b83210 Clean up REST pattern in tags:
1) Generate the form in Tags_Controller::_form_add()
2) Process the form submit in Tags_Controller::_create()
3) Create the tag properly

This required me to limit our scope to adding one tag at a time, which
I think is fine if we're doing Ajax style tag addition.
2008-11-27 05:00:50 +00:00
Tim Almdal b4b72b284b We are now submitting the ajax tag add form to the server correctly and rehooking the ajaxForm 2008-11-27 01:48:01 +00:00
Tim Almdal d881c91e0c Trying to add tags, but it doesn't work yet. For some reason that i can't figure out, the form never validates and I never get into the true branch of the if. I'm taking a break for awhile. 2008-11-27 00:26:04 +00:00
Bharat Mediratta 91b1c4cf39 Skip the tags block if there're no tags 2008-11-26 23:06:35 +00:00
Bharat Mediratta 39b6e84a57 Change sort_by_name to case insensitive sort. 2008-11-26 10:48:00 +00:00
Bharat Mediratta 98ee16ca49 Simplify tags code some more:
1) change buckets to be 1-7 not 0-6.. zero-based indicies don't make sense in the
   real world and are liable to confuse themers.

2) Change tag API to popular_tags($count) which just returns the popular tags.  Let
   the block code massage it into the right format for the view.

3) Move alphasort into the block code, simplify it and rename it to sort_by_name so
   that it's more descriptive

4) Do the bucketing in the view; this allows the themer to override it and create their
   own bucketing algorithm to go with the theme's CSS.

5) Don't create any temporary objects.
2008-11-26 10:27:13 +00:00
Tim Almdal de56a33c9c Clean tag creation 2008-11-26 06:37:12 +00:00
Bharat Mediratta e31456af47 Remove stray 'filter' instances 2008-11-26 05:20:47 +00:00
Tim Almdal 03bf3a6af2 Remove the more or less links 2008-11-26 05:08:43 +00:00
Tim Almdal 1ea0382f53 Moving right along on tags. Now the threshold for which tags can be changed. The default is to show all the tags (i.e. count >= the minimum frequency) by clicking on the "See Less" link, the tag cloud will not show the minimum frequency, so the number of tags shown is smaller.
The "See More" link works the opposite way.
2008-11-25 22:38:11 +00:00
Tim Almdal e9e589e5eb Display tag block using data from the database 2008-11-25 18:54:04 +00:00
Tim Almdal d554adc484 1) Changed how the test tags are generated to be able to create a better distribution
2) Added a new helper function "load_buckets" assign the class suffix to each tag
3) Created a unit test to test the load_buckets function
2008-11-25 18:14:52 +00:00
Bharat Mediratta 7ec579cede Simplify the API. We don't have a need to add multiple tags to
multiple items, so don't create a confusing API where we don't need
one.  The caller can just as easily loop over items and tags.

Use ORM::has() instead of manually looping over items, which would be
wildly inefficient on large installs.  Document that we're calling
ORM::has() a second time just so that we can update the count
correctly.
2008-11-25 04:23:45 +00:00
Tim Almdal f81a9879be Moved the creation of tags into the tag helper library. Added a count field to the tags table. Bharat, I know you said not to worry about caching, but I want to explore what are some of the issues with keeping track of the counts as we go. (i.e. is it a pain in the a__) 2008-11-24 23:18:32 +00:00
Tim Almdal 39f00707ac Add the creation of tags to the scaffolding code 2008-11-24 05:03:52 +00:00
Bharat Mediratta a164d0ee80 Fix a few minor bugs in the tags db schema and simplify it a bit.
Avoid using restrictions on our data in the database; let's design the
system to keep integrity in the app (and make the app robust against
minor integrity issues like duplicate tags, etc).
2008-11-23 20:05:24 +00:00
Tim Almdal ab20406ef2 Tag module database definitions 2008-11-23 18:00:44 +00:00
Bharat Mediratta c6f0cc036d Move all block callbacks from View::block_type() to
$theme->block_type() so that the themer has a consistent interface.
Also added a bunch more callbacks and normalized the names so that the
module author has plenty of options for where stuff gets put on the
page.  Especially renamed album/photo/sidebar to be album_blocks()
photo_blocks() and sidebar_blocks() to make it clear that those are
going to be larger content sections and not just basic insertion
points.

Used __call() to collapse all functions in the theme, which
incidentally makes it trivially easy to add a new insertion point.
2008-11-22 21:46:34 +00:00
Tim Almdal 8eadddfa87 Convert gmaps, info, and tag modules to the new block module 2008-11-22 05:51:15 +00:00
Bharat Mediratta e3be3cecf5 Second half of renaming the tags module. Change all occurrences of
gTags to gTag in the CSS.
2008-11-16 07:20:58 +00:00
Bharat Mediratta e87a37b855 Rename 'tags' module to 'tag' for consistency of pluralization 2008-11-16 07:17:29 +00:00