binarylogic / searchlogic
- Source
- Commits
- Network (63)
- Issues (42)
- Downloads (48)
- Wiki (1)
- Graphs
-
Tree:
66d97e4
searchlogic / CHANGELOG.rdoc
1.2.1 released 2008-09-24
- Fixed problem when determining if an order_by_link is currently being ordered. Just "stringified" both comparable values.
- Removed default order_by and order_as. They will ONLY have values if you specify how to order, otherwise they are nil.
- Removed order_as requirement. order_as is optional.
- Added in deep_merge methods for hash, copied over from ActiveSupport 2.1
- Improved order by auto joins to be based off of what order_by returns instead of setting it when setting order_by.
- Added priority_order_by. Useful if you want to order featured products first and then order as usual. See documentation in Searchgasm::Search::Ordering for more info.
- Added in base64 support for order_by and priority_order_by so that it’s value is safe in the URL
- Added priority_order_by_link
1.2.0 released 2008-09-24
- Added searchgasm_params and searchgasm_url helper to use outside of the control type helpers.
- Added dup and clone methods that work properly for searchgasm objects
- Fixed bug to remove nil scope values, HABTM likes to add :limit => nil
- Removed unnecessary build_search methods for associations
- Removed support for searching with conditions only. This just made things much more complicated when you can accomplish the same thing by starting a new search and only setting conditions.
- Fixed bug when searching with any conditions to use left outer joins instead of inner joins.
1.1.3 released 2008-09-23
- Setting a condition to nil removes it if the condition is set to ignore blanks
- Setting search.conditions = "some sql" will reset ALL conditions. Alternatively search.conditions => {:first_name_contains => "Ben"} will overwrite "some sql". The same goes with search.conditions.first_name_contains = "Ben".
- Fixed bug with inspect
- Other small performance enhancements with memoized attributes
1.1.2 released 2008-09-22
- Fixed bug with select control types not using :search_obj to determine its select values.
- Added is_nil and is_blank condition types.
- "memoized" various attributes for performance enhancements
- Removed the :order option from calculation options when :order is useless and just slows down query.
- Switched from using :include to :joins, big performance increase
1.1.1 released 2008-09-19
- Fixed typo in "next page" button.
- Updated valid options for searching and performing calculations, fixed some bugs when searching and performing calculations with advanced options.
- Fixed bug in ordering where table name was assumed by the hash. Now assumed by the reflection.
- Added default for per_page, so pagination comes implemented by default
- On mass assignments blank strings for any conditions are ignored. Sometimes blank strings are meaningful for "equals" and "does not equal", those only takes effect if you explicitly call these conditions: search.conditions.name = "". User.new_search(:conditions => {:name => ""}) will be ignored. Also, Searchgasm should never change how ActiveRecord behaves by default. So User.all(:conditions => {:name => ""}) will NOT be ignored.
1.1.0 released 2008-09-18
- Added the options :inner_spread and :outer_spread to the page_links helper. Also added various config options for setting page_links defaults.
- Updated calculation methods to ignore :limit and :offset. AR returns 0 or nil on calculations that provide an offset.
- Added support to allow for "any" of the conditions, instead of all of them. Joins conditions with "or" instead of "and". See Searchgasm::Conditions::Base or the readme
1.0.4 released 2008-09-18
- Fixed bugs when performing calculations and searches on has_many through relationships.
- Instead of merging the find_options myself, I delegated that to AR’s with_scope function, which already does this. Much more solid, less intrusive.
1.0.3 released 2008-09-18
- Updated inspect to show the current options for your search. Plays nicer in the console.
- Made sure protection state is persistent among relationship conditions.
- Fixed bug with backwards compatibility of rails. concat requires a proc in older version.
- Defaulted remote control types to use GET requests instead of POST.
- Completely reengineered integration with ActiveRecord. Searchgasm is properly using scopes letting you do use serachgasm where scope are implemented. @current_users.orders.new_search, etc. If your search is scoped and you want a search object, that search object will represent a new search in the context of those scopes, meaning the scopes get merged into Searchgasm as options.
- Dropped support for Searchgasm functionality when defining relationships: has_many :order, :conditions => {:total_gt => 100}, will not work anymore. It’s a chicken and the egg thing. Searchgasm needs AR constants, some models get loaded before others, therefore the Order model may not have been loaded yet, causing an unknown constant error.
- Clean up redundant code and moved it into the Searchgasm::Shared namespace.
1.0.2 released 2008-09-12
- Moved cached searchers out of the global namespace and into the Searchgasm::Cache namespce.
- Various changes to improve performance through profiling / benchmarking. pastie.org/271936
- Config.per_page works with new_search & new_search! only. Where as before it was only working if the search was protected.
1.0.1 released 2008-09-11
- Cached "searchers" so when a new search object is instantiated it doesn’t go through all of the meta programming and method creation. Helps a lot with performance. You will see the speed benefits after the first instantiation.
- Added in new options for page_links.
- Fixed minor bugs when doing page_links.
- Updated documentation to be more detailed and inclusive.
1.0.0 released 2008-09-08
- Major changes in the helpers, they were completely re-engineered. Hence the new version. I established a pattern between all helpers giving you complete flexibility as to how they are used. All helpers are called differently now (see documentation).
0.9.10 released 2008-09-08
- Fixed bug with setting the per_page configuration to only take effect on protected searches, thus staying out of the way of normal searching.
- Hardened more tests
0.9.9 released 2008-09-07
- Fixed setting per_page to nil, false, or ’’. This is done to "show all" results.
0.9.8 released 2008-09-06
- Fixed order_by helper bug when guessing the text with arrays. Should use the first value instead of last.
- Added in per_page config option.
0.9.7 released 2008-09-06
- Complete class restructure. Moved the 3 main components into their own base level class: Search, Conditions, Condition
- Split logic and functionality into their own modules, implemented via alias_chain_method
- Added in helpers for using in a rails app
- Added link to documentation and live example in README
- Various small bug fixes
- Hardened tests
0.9.6 released 2008-09-04
- Fixed bug when instantiating with nil options
0.9.5 released 2008-09-03
- Enhanced searching with conditions only, added in search methods and calculations
- Updated README to include examples
0.9.4 released 2008-09-03
- Cleaned up search methods
- Removed reset! method for both searching and searching by conditions
0.9.3 released 2008-09-02
- Changed structure of conditions to have their own class
- Added API for adding your own conditions.
0.9.2 released 2008-09-02
- Enhanced protection from SQL injections (made more efficient)
0.9.1 released 2008-09-02
- Added aliases for datetime, date, time, and timestamp attrs. You could call created_at_after, now you can also call created_after. Just removed the "at" requirement.
0.9.0 released 2008-09-01
- First release

