Commit Graph
185 Commits
Author SHA1 Message Date
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
Bharat Mediratta e1f39ac13f Re-enable code to drop view columns from the items table when deleting groups. 2008-11-26 09:38:39 +00:00
Bharat Mediratta 427dc7a0d1 Ignore errors from dropping view columns from the items table. 2008-11-26 09:34:31 +00:00
Tim Almdal de56a33c9c Clean tag creation 2008-11-26 06:37:12 +00:00
Bharat Mediratta 18ce4a4c1f Actually call uninstall! 2008-11-26 05:43:43 +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
Bharat Mediratta 9c60566197 Add support for marking users as "admin" 2008-11-26 04:54:43 +00:00
Bharat Mediratta 226df2a8f8 Add support in the scaffolding for adding users to groups, adding and
removing users and groups.
2008-11-26 04:45:43 +00:00
Bharat Mediratta 5ccb050413 group::create() and group::delete() now manage the view_## columns in
the items table.

Convert installer over to using new creation API.
2008-11-26 04:13:57 +00:00
Bharat Mediratta 5fce343ca4 Create user/group create/delete functions and have the scaffolding use them. 2008-11-26 03:34:39 +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 53f45b3079 Correct call to undefined uninstall_modules method. Should have been _uninstall_modules 2008-11-25 18:00:33 +00:00
Tim Almdal 38a260b1d7 Rename get_absolute_url to abs_current 2008-11-25 16:50:29 +00:00
Tim Almdal 102f0f566b Normalize atom url generation 2008-11-25 15:54:45 +00:00
Tim Almdal 2c20fed373 Dynamically locate modules to install for test 2008-11-25 15:01:17 +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
Tim Almdal 52206148a8 Fix tests 2008-11-25 06:41:11 +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
Bharat Mediratta c725a0f16e Move comment listing into the comment module 2008-11-25 02:14:04 +00:00
Bharat Mediratta 1ad1846774 Oops, fix a typo causing us to treat an array like a string. 2008-11-25 01:58:19 +00:00
Bharat Mediratta 2c7893b48e Fix a bug in thumbnail_info where we were printing out the data instead of returning it 2008-11-25 01:35:42 +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 75d9a829d7 Add @todo to look at normalizing the url functions to the ones already in MY_url.php 2008-11-24 22:20:22 +00:00
Chad Kieffer c812d2a931 Changed comment sort order asc. Changed ajax comment add to append comment li to comment thread ul. Added fadeIn for user login. 2008-11-24 07:12:45 +00:00
Tim Almdal 39f00707ac Add the creation of tags to the scaffolding code 2008-11-24 05:03:52 +00:00
Chad Kieffer e85282b709 Make login form JS unobtrusive. Needs work. 2008-11-24 00:27:45 +00:00
Bharat Mediratta 45128b2322 Prefer variable interpolation to sprintf where possible (less code, more readable)
Prefer url::abs_site() to atom::get_base_url()
2008-11-23 21:47:04 +00:00
Jozef Selesi 55fc5993f0 Fix double-escaping in the item comments feed. 2008-11-23 20:43:47 +00:00
Bharat Mediratta 3e3beb34e9 Change the map, for kicks. 2008-11-23 20:25:32 +00:00
Bharat Mediratta 156c4f3548 Fix HTML errors. 2008-11-23 20:13:38 +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
Jozef Selesi 7485740d97 Changed and extended the Atom library a little so that the code for creating entries and feeds has been considerably simplified and reduced. 2008-11-23 12:41:41 +00:00
Bharat Mediratta 51ada4c2e2 Move search out into its own module and have it display its link at
the header_bottom() insertion point.
2008-11-23 08:08:12 +00:00
Jozef Selesi d14d312d06 * Individual comment views now output valid Atom 1.0 entries:
http://example.gallery.com/index.php/comments/{comment_id}?_format=atom
* Changed Content-Type of Atom feeds and entries to XML for easier debugging.
* Added an Atom helper class with some common functions and cleaned up entry and feed generation code a bit in the comment helper.
* Style fixes.
2008-11-23 00:24:56 +00:00
Jozef Selesi d93d37a10c * Fixed a bug in the Atom library where child elements were not added to their proper parents.
* Added valid Atom 1.0 feeds for comments. They can be seen at:
  http://gallery.example.com/index.php/comments?item_id={photo_id}&_format=atom
2008-11-22 22:46:17 +00:00
Bharat Mediratta 1b76def26f Create thumbnail insertion points (top/bottom/info) and move
the generic item info into the info module.
2008-11-22 21:59:41 +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