diff --git a/app/uploaders/gprs_uploader.rb b/app/uploaders/gprs_uploader.rb
new file mode 100644
index 00000000..4ce41321
--- /dev/null
+++ b/app/uploaders/gprs_uploader.rb
@@ -0,0 +1,61 @@
+class GprsUploader < CarrierWave::Uploader::Base
+
+ # Include RMagick or ImageScience support:
+ # include CarrierWave::RMagick
+ # include CarrierWave::ImageScience
+ include CarrierWave::MiniMagick
+
+ # Choose what kind of storage to use for this uploader:
+ # storage :file
+ # storage :s3
+
+ # Override the directory where uploaded files will be stored.
+ # This is a sensible default for uploaders that are meant to be mounted:
+ def store_dir
+ "gprs/#{model.class.to_s.underscore}/#{mounted_as}/#{model.id}"
+ end
+
+ # Provide a default URL as a default if there hasn't been a file uploaded:
+ # def default_url
+ # "/images/fallback/" + [version_name, "default.png"].compact.join('_')
+ # end
+
+ # Process files as they are uploaded:
+ # process :scale => [200, 300]
+ #
+ # def scale(width, height)
+ # # do something
+ # end
+
+ # Create different versions of your uploaded files:
+ # version :thumb do
+ # process :scale => [50, 50]
+ # end
+
+ version :thumb do
+ process :resize_to_fill => [150, 120]
+ end
+
+ # Add a white list of extensions which are allowed to be uploaded.
+ # For images you might use something like this:
+ # def extension_white_list
+ # %w(jpg jpeg gif png)
+ # end
+
+ # Override the filename of the uploaded files:
+ # def filename
+ # "something.jpg" if original_filename
+ # end
+
+# def manipulate!
+# raise current_path.inspect
+# image = ::MiniMagick::Image.open(current_path)
+# image = yield(image)
+# image.write(current_path)
+# ::MiniMagick::Image.open(current_path)
+# rescue ::MiniMagick::Error, ::MiniMagick::Invalid => e
+# raise CarrierWave::ProcessingError.new("Failed to manipulate with MiniMagick, maybe it is not an image? Original Error: #{e}")
+# end
+
+end
+
diff --git a/app/views/layouts/_side_bar.html.erb b/app/views/layouts/_side_bar.html.erb
index cc6daf73..fbc7e4a6 100644
--- a/app/views/layouts/_side_bar.html.erb
+++ b/app/views/layouts/_side_bar.html.erb
@@ -105,7 +105,7 @@
<% end -%>
<% end -%>
-<%= content_tag :li, :class => active_for_controllers('cals','calendar_categories') || active_for_app_auth("calendar") do -%>
+<%= content_tag :li, :class => active_for_controllers('cals') || active_for_app_auth("calendar") do -%>
<%= link_to content_tag(:i, nil, :class => 'icons-calendar') + content_tag(:span, t('admin.calendar')), panel_calendar_back_end_cals_path %>
<%= content_tag :ul, :class => ("nav nav-list " + visible_for_controllers('cals','calendar_categories') ) do -%>
<%#= content_tag :li, link_to(t('admin.ad.all_banners'), admin_ad_banners_path), :class => active_for_action('ad_banners', 'index') %>
@@ -116,6 +116,17 @@
<%#= content_tag :li, link_to(t('admin.module.authorization'),admin_module_app_manager_auth_proc_path(ModuleApp.first(conditions: {key: "gallery"}))), :class => active_for_app_auth('gallery') if (is_admin? rescue nil) %>
<% end -%>
<% end %>
+<%= content_tag :li, :class => active_for_controllers('locations') || active_for_app_auth("gprs") do -%>
+ <%= link_to content_tag(:i, nil, :class => 'icons-link') + content_tag(:span, t('admin.gprs')), panel_gprs_back_end_locations_path %>
+ <%= content_tag :ul, :class => ("nav nav-list " + visible_for_controllers('locations') ) do -%>
+ <%#= content_tag :li, link_to(t('admin.ad.all_banners'), admin_ad_banners_path), :class => active_for_action('ad_banners', 'index') %>
+ <%#= content_tag :li, link_to(t('admin.ad.new_banner'), new_admin_ad_banner_path), :class => active_for_action('ad_banners', 'new') %>
+ <%#= content_tag :li, link_to(t('admin.ad.new_image'), new_ad_image_admin_ad_banners_path), :class => active_for_action('ad_images', 'new') %>
+ <%#= content_tag :li, link_to((t('calendar.calendars') + content_tag(:i, nil, :class => 'icon-chevron-right')).html_safe, new_panel_calendar_back_end_cal_path), :class => active_for_action('cals','new') %>
+ <%#= content_tag :li, link_to(t('gallery.tags'), panel_gallery_back_end_tags_path), :class => active_for_action('/panel/gallery/back_end/tags', 'index') %>
+ <%#= content_tag :li, link_to(t('admin.module.authorization'),admin_module_app_manager_auth_proc_path(ModuleApp.first(conditions: {key: "gallery"}))), :class => active_for_app_auth('gallery') if (is_admin? rescue nil) %>
+ <% end -%>
+<% end %>
<%= content_tag :li, :class => (active_for_controllers('writing_journals', '/panel/personal_journal/back_end/tags', 'writing_journal_categorys', 'approvals') || active_for_app_auth('PersonalJournal') ) do -%>
<%= link_to content_tag(:i, nil, :class => 'icons-personal_journal') + t('admin.personal_journal'), panel_personal_journal_back_end_writing_journals_path %>
diff --git a/config/locales/en.yml b/config/locales/en.yml
index efe8612a..b638ccb1 100644
--- a/config/locales/en.yml
+++ b/config/locales/en.yml
@@ -130,6 +130,7 @@ en:
attributes: Attributes
author: Author
calendar: Calendar
+ gprs: GPRS
cant_delete_self: You can not delete yourself.
cant_revoke_self_admin: You can not revoke your admin role yourself.
category: Category
diff --git a/vendor/built_in_modules/calendar/app/assets/javascripts/calendarAPI.js.erb b/vendor/built_in_modules/calendar/app/assets/javascripts/calendarAPI.js.erb
index 2b8b2b02..78089ac7 100644
--- a/vendor/built_in_modules/calendar/app/assets/javascripts/calendarAPI.js.erb
+++ b/vendor/built_in_modules/calendar/app/assets/javascripts/calendarAPI.js.erb
@@ -15,7 +15,7 @@ var calendarAPI = function(){
})
var bindHandlers = function(){
$(".event").live("click",function(){
- c.displayEvent();
+ c.displayEvent($(this));
})
$("#create_event_btn").click(function(){
@@ -115,6 +115,8 @@ var calendarAPI = function(){
$.getJSON("cals/getEvents",{"type":"monthview","month":month,"year":year},function(events){
var $eventrow = $("
");
var nos = new Array();
+ var currow = 0;
+ var lastno = 0;
nos.push(0);
$.each(events,function(i,evnt){
var daydom = $("#calendar_month td[date="+evnt.start_date+"]");
@@ -124,28 +126,51 @@ var calendarAPI = function(){
var thisno = daydom.attr("no");
var index = "new";
+ var smallcount = 0;
+
for(x in nos){
- if(thisno < nos[x]){
- $eventrow = null;
- $eventrow = $("
");
+ if(thisno > nos[x]){
+ smallcount++;
+ }
+ if(smallcount > 0){
index = x;
break;
}
}
+ if(index == "new"){
+ nos=[]
+ $eventrow = null;
+ $eventrow = $("
");
+ }
+
+ if(thisrow!=currow){
+ $eventrow = null;
+ $eventrow = $("
");
+
+ }
+
if(index!="new"){
- nos[index] = (thisno + evnt.total_days) - 1;
+ nos[index] = (parseInt(thisno) + parseInt(evnt.total_days)) - 1;
}else{
- nos.push((thisno + evnt.total_days) - 1);
+ nos.push((parseInt(thisno) + parseInt(evnt.total_days)) - 1);
}
if(pos == 1){
- $eventrow.html(''+evnt.title+' | ');
+ $eventrow.html(''+evnt.title+' | ');
}else{
if($eventrow.html()==""){
$eventrow.append('');
+ }else{
+ if((lastno+1)!=thisno){
+ var inposition = $eventrow.find("td.main_td").attr("pos");
+ var colspan = parseInt(pos) - parseInt(inposition);
+ colspan--;
+ $eventrow.append(' | ');
+ }
}
- $eventrow.append(' | '+evnt.title+' | ');
+ $eventrow.append(''+evnt.title+' | ');
}
-
+ lastno = (parseInt(thisno) + parseInt(evnt.total_days)) - 1;
+ currow = thisrow;
curparent.append($eventrow);
})
})
@@ -195,9 +220,14 @@ var calendarAPI = function(){
$("tr[for="+domfor+"]").remove();
})
}
- this.displayEvent = function(){
-
- c.event_quick_view_div.show()
+ this.displayEvent = function(dom){
+ var url = dom.attr("link");
+ c.event_quick_view_div.load(url,function(){
+ c.event_quick_view_div.show()
+ c.event_quick_view_div.find(".event-close-btn").click(function(){
+ c.event_quick_view_div.empty().hide();
+ })
+ })
}
c.initialize();
}
diff --git a/vendor/built_in_modules/calendar/app/assets/stylesheets/calendar.css b/vendor/built_in_modules/calendar/app/assets/stylesheets/calendar.css
index 421f8334..85b0390f 100644
--- a/vendor/built_in_modules/calendar/app/assets/stylesheets/calendar.css
+++ b/vendor/built_in_modules/calendar/app/assets/stylesheets/calendar.css
@@ -265,7 +265,7 @@
/* Event Controller */
.event_controller {
- width: 300px;
+ width: 350px;
}
.event_controller .row-fluid {
margin-bottom: 6px;
diff --git a/vendor/built_in_modules/calendar/app/controllers/panel/calendar/back_end/cals_controller.rb b/vendor/built_in_modules/calendar/app/controllers/panel/calendar/back_end/cals_controller.rb
index 4c42e0d4..6330e95b 100644
--- a/vendor/built_in_modules/calendar/app/controllers/panel/calendar/back_end/cals_controller.rb
+++ b/vendor/built_in_modules/calendar/app/controllers/panel/calendar/back_end/cals_controller.rb
@@ -58,7 +58,7 @@ class Panel::Calendar::BackEnd::CalsController < OrbitBackendController
def get_events
month = params[:month]
year = params[:year]
- events = Event.where(:start_month => month).and(:start_year => year)
+ events = Event.where(:start_month => month).and(:start_year => year).asc(:start_date)
@events = Array.new
events.each do |event|
# @temp = Array.new
@@ -66,8 +66,9 @@ class Panel::Calendar::BackEnd::CalsController < OrbitBackendController
no_of_days = no_of_days.to_i
no_of_days += 1
color = Cal.find(event.cal_id).color
- @events << {"start_date"=>event.start_date, "total_days" => no_of_days, "title" => event.title,"color"=>color}
+ @events << {"start_date"=>event.start_date, "total_days" => no_of_days, "title" => event.title,"color"=>color,"show_link"=>panel_calendar_back_end_event_path(event)}
end
+ @events = @events.sort{|k,v| v[:total_days] <=> k[:total_days]}
render :json => @events.to_json
end
diff --git a/vendor/built_in_modules/calendar/app/controllers/panel/calendar/back_end/events_controller.rb b/vendor/built_in_modules/calendar/app/controllers/panel/calendar/back_end/events_controller.rb
index 0dca026f..ea319cdb 100644
--- a/vendor/built_in_modules/calendar/app/controllers/panel/calendar/back_end/events_controller.rb
+++ b/vendor/built_in_modules/calendar/app/controllers/panel/calendar/back_end/events_controller.rb
@@ -1,5 +1,5 @@
class Panel::Calendar::BackEnd::EventsController < OrbitBackendController
-
+ include Panel::Calendar::BackEnd::CalsHelper
def new
@calendars = Cal.all
@event = Event.new
@@ -55,4 +55,14 @@ class Panel::Calendar::BackEnd::EventsController < OrbitBackendController
h.js
end
end
-end
\ No newline at end of file
+ def show
+ @event = Event.find(params[:id])
+ @start_month_name = Date::ABBR_MONTHNAMES[@event.start_month]
+ @end_month_name = Date::ABBR_MONTHNAMES[@event.end_month]
+ @start_day_name = getDayName(@event.start_date,@event.start_month,@event.start_year)
+ @end_day_name = getDayName(@event.end_date,@event.end_month,@event.end_year)
+ render :layout=>false
+ end
+end
+
+
diff --git a/vendor/built_in_modules/calendar/app/helpers/panel/calendar/back_end/cals_helper.rb b/vendor/built_in_modules/calendar/app/helpers/panel/calendar/back_end/cals_helper.rb
index 60a14ffa..3f937552 100644
--- a/vendor/built_in_modules/calendar/app/helpers/panel/calendar/back_end/cals_helper.rb
+++ b/vendor/built_in_modules/calendar/app/helpers/panel/calendar/back_end/cals_helper.rb
@@ -61,5 +61,10 @@ module Panel::Calendar::BackEnd::CalsHelper
monthsdays << 31
return monthsdays
end
+ def getDayName(date,month,year)
+ dt = Date.new(year,month,date)
+ name = Date::ABBR_DAYNAMES[dt.wday]
+ return name
+ end
end
\ No newline at end of file
diff --git a/vendor/built_in_modules/calendar/app/views/panel/calendar/back_end/cals/index.html.erb b/vendor/built_in_modules/calendar/app/views/panel/calendar/back_end/cals/index.html.erb
index 98a237af..96701aaf 100644
--- a/vendor/built_in_modules/calendar/app/views/panel/calendar/back_end/cals/index.html.erb
+++ b/vendor/built_in_modules/calendar/app/views/panel/calendar/back_end/cals/index.html.erb
@@ -62,7 +62,7 @@
-
+
diff --git a/vendor/built_in_modules/calendar/app/views/panel/calendar/back_end/events/show.html.erb b/vendor/built_in_modules/calendar/app/views/panel/calendar/back_end/events/show.html.erb
index 0791c7bd..c65a2fa6 100644
--- a/vendor/built_in_modules/calendar/app/views/panel/calendar/back_end/events/show.html.erb
+++ b/vendor/built_in_modules/calendar/app/views/panel/calendar/back_end/events/show.html.erb
@@ -1,10 +1,15 @@
- Thu, September 13
+
+ <% if @event.start_date == @event.end_date %>
+ <%= @start_day_name+", "+@event.start_date.to_s+"-"+@start_month_name %>
+ <% else %>
+ <%= @start_day_name+", "+@event.start_date.to_s+"-"+@start_month_name %> to <%= @end_day_name+", "+@event.end_date.to_s + "-" + @end_month_name %>
+ <% end %>