Needs review
Project:
Agreservations
Version:
6.x-4.x-dev
Component:
Code
Priority:
Normal
Category:
Feature request
Assigned:
Unassigned
Reporter:
Created:
22 Jul 2010 at 08:37 UTC
Updated:
16 Nov 2011 at 17:57 UTC
If anyone else is using this to manage rental properties, you may have come across the same hurdle as I have.
For daily vs. weekly discounts, I've been able to use the alt discounts module [http://drupal.org/project/uc_discounts_alt].
How, if at all, have others managed seasonal discounts? My rentals have three seasons and are priced differently in each season.
An example can be seen in the uc_hotel module [http://drupal.org/project/uc_hotel]. I'm running this module on two hotels and it allows for seasonal variation (however, it doesn't manage units - it acts are more of an online store with rooms as inventory. Works great for the hotel, but the rental props don't fit in as easily).
Comments
Comment #1
agill commentedworking on it...
Comment #2
summit commentedSubscribing, greetings, Martijn
Comment #3
agill commentedSeason rates are possible now with the agres_timeframe and agres_rate modules.
Comment #4
agill commentedseasonal discounts? or seasonal different prices are now possible in versions
6.x-4.x-dev and 7.x-1.x-dev
there also will be a screencast online for on agreservations.com before november 2011
Comment #5
lucabarbetti commentedGreat news Andreas, seasonal pricing is a must even for the smallest B&B or a single rentable property. I've just installed the 6.x-4.x-dev release but I can't find this feature or at least I couldn't find it where I expected it to be (Pruduct information - List price). Did I miss a tab or something? Do I have to enable it from somewhere else? Do I have to re-create the products (for me it's just one house)? Do I have to use Attributes, Options and stuff like that? I'd be really happy if you could give me some info.
Thnks a lot
Comment #6
agill commentedUnit Types are products, so are rates.
What you need to do is: assign each unit type a referenced rate.
Each rate can have multiple time frames assigned, also each rate has price fields
like the unit type - product.
so the order is like this: unit types ---have---> rates ---have---> time frames
had no time yet for the screencast, but next weekend it should be online
it will make things clear.
For very short timeframes this is not yet very handy, but in future this will be possible
by repeat date option...right now this works well for longer seasons/time frames.
Comment #7
lucabarbetti commentedHi Andreas,
firstly a big THANK you for your reply, even if it wasn't enough to get me going, I really appreciated it. I understand that you are busy so I'm going to wait untill next weekend for the screencast.
I just want to explain my difficulties hereafter so that you might consider them while making the screencast, maybe I should also say that with 'seasonal pricing' I meant that a user selects an arrival date and a departure date in the search block and, if available, the unit shows up for renting with the right 'seasonal price' (e.g. 'high season price' if the user selected a week that falls in the 'high season' period of time).
As I said, I use the 6.x-4.x-dev release of your module with the Ubercart module and everything seems to work well with just one 'all year around price' (I just have and will have only one Product/Unit of one Unit Type of one Unit Category Type).
Here is what I did:
I created a timeframe for each 'season', let's say High, Medium and Low (but I couldn't set the starting and ending dates of each timeframe).
I configured the reference timeframe field of the agres-rate Type checking 'required' and 'timeframe' in global settings.
I created a rate of the agres_rate type selecting all the reference timeframes, selecting 'yes' in 'check for complete in range status for timeframes', and selecting 'normal' in 'Type of rate' (but I couldn't enter the price for each of the timeframes).
Then I was supposed to assign that rate to my unit type and, maybe I'm the dumbest person in this world, I couldn't find a way to do it.
Also, even if I had found a way to assign that referenced rate to my unit type, I don't understand how the agreservations module would find the right price based on the period of time selected by the user since I couldn't set the seasonal prices and the dates of the seasons anywhere.
Thanks again and looking forward to watching your screencast.
Cheers
Comment #8
agill commentedHello,
in the video section on agreservations.com
there now exists a video describing how to set up seasonal rates for the unit types.
This should help you setting this up.
In the last versions there still were some errors which i believe are solved in the
latest 6.x-4.x-dev version. So its possible you need to reinstall the timeframe and rates submodules.
Comment #9
lucabarbetti commentedHi Andreas,
thanks for your video. As you suggested and in hopes of finding the same screens, I updated the agreservations module to the latest dev release (13 nov) and I think I got the general idea but I had some difficulties following you and still I have some doubts, other than a couple of function call errors.
The classes agreservations_unittype and agres_rate were already set, but while setting the rates I had only two options under SET THE STATES OF TIMEFRAME (instead you had three) and only two options under TYPE OF RATE (instead you had three again).
In order to see the Reference Rate dropdown menu that you had already there (while configuring the Unit Type), I had to add a node-reference-type field (Reference Rate) in the Unit Type content type and then I configured this field as Requested, with an unlimited number of values and with agres_rate as the referenced content type. Is it the right way to do it? And then do I have to select all the reference rates that are in the dropdown menu? I selected all of them but I had few errors... what did I do wrong?
Have a good one!
Comment #10
agill commentedhmmm, maybe the update code in the agres_rate module is not working correctly.
maybe you need to disable and uninstall the agres_rate module and then install again.