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
Bharat Mediratta
b37047ff55
Add Item_Model::viewable() which we can use to restrict any query to
...
just items viewable by the active user. Ie:
ORM::factory("item")
->where("name", "foo")
->find_all()
Would get all items with the name "foo".
ORM::factory("item")
->viewable()
->where("name", "foo")
->find_all()
Restricts it to just the set of items that the user is allowed to see.
2008-12-17 22:39:33 +00:00
Chad Kieffer
9fa566a1c9
Added label to add tag form input
2008-12-17 01:19:13 +00:00
Tim Almdal
1c279887aa
Should be get_var not set_var
2008-12-14 03:48:32 +00:00
Bharat Mediratta
d480778108
Don't have to check if the item is loaded now, access::can will guard against unloaded items
2008-12-13 19:49:58 +00:00
Bharat Mediratta
65e237a59a
Fix security pattern. We can't successfully call access::can unless the item is loaded.
2008-12-13 09:53:36 +00:00
Tim Almdal
e7a763a8c2
Add permission check on the tag add controller, in case some bypasses the view and tries to access the controller directly.
2008-12-13 08:27:14 +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
Tim Almdal
942dbe175c
Remove a couple of todo's by store the "theme name", "admin theme name" and "page size" in the vars table and initializing when the core module is installed
2008-12-12 19:39:38 +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
Bharat Mediratta
88b35c1182
Tags_Model::items() now lets you filter by item type
2008-11-28 01:40:55 +00:00
Tim Almdal
828f23896f
Rename item events and create events for comment create, login, logout, user creation. I probably forgot some, but its a start.
2008-11-28 00:51:38 +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
Tim Almdal
bac4ff2046
1) Create a Theme_View class that combines the functionality of the Theme class with the View class.
...
2) Only define the form.html.php::DrawForm method once if there are multiple forms on the page (i.e. comments and add tags)
2008-11-27 16:19:07 +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
09b27ecf98
Remove stray trailing blank lines
2008-11-27 06:24:07 +00:00
Bharat Mediratta
d16790de0c
Get rid of the placeholder "add tags here..." text, and clear the form
...
on submit.
2008-11-27 05:45:17 +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
Bharat Mediratta
480abae401
Fix indentation.
2008-11-27 04:31:12 +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
974f9f7788
Add a new "tag" page type.
...
Create the concept of "page types" which let us specify the kind of
page that we're rendering in high level terms. Currently there are
three page types: album, photo and tag.
The tag page type uses slightly different variables. It has a $tag
but no $item. Adjust all sidebar_block() functions to avoid printing
stuff that's dependent on the item if there is no item.
Simplify the tag code to stop trying to fake an item.
Update the theme slightly to use $item and $tag where appropriate
(notably, for making the <title> element).
2008-11-26 21:50:45 +00:00
Bharat Mediratta
9f37aaa1c2
Move Tag_Controller -> Tags_Controller to fit our REST pattern.
2008-11-26 20:40:04 +00:00
Bharat Mediratta
aa19a79e06
Clean up unnecessary comments, remove stray references to Comment_Controller
2008-11-26 20:33:06 +00:00
Tim Almdal
b3be74166c
Breadcrumbs now look right for dynamic tag albums
2008-11-26 17:08:57 +00:00
Tim Almdal
e77fd34175
Duh, i have the count in the tag model... why do i need to do a query to count?
...
Added text to the description instead of return an empty string
2008-11-26 17:02:27 +00:00
Tim Almdal
af9a27216d
Modify the tag model to behave like a virtual album. There are two outstanding issues that i still have to resolve. The first being there is no thumbnail for the root directory, so it doesn't look quite right. And secondly, the bread crumb shows the dynamic tag album as hot having a parent. I wanted it to be the root directory, but i will overcome :-)
2008-11-26 16:48:00 +00:00
Tim Almdal
dfd0281512
Remove test since the method to be tested was removed
2008-11-26 15:18:09 +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
Tim Almdal
b2af9ed470
Modify the test controller to call tag_installer::install and uninstall
...
Created the first tag unit test
2008-11-25 07:05:03 +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