infopark_rails_connector 6.8.0.210.ed204b0 → 6.8.0.322.c003f11

Sign up to get free protection for your applications and to get access to all the features.
Files changed (87) hide show
  1. data/.yardopts +5 -0
  2. data/README +9 -20
  3. data/app/controllers/cms_controller.rb +3 -2
  4. data/app/controllers/comments_controller.rb +2 -2
  5. data/app/controllers/crm_form_controller.rb +5 -0
  6. data/app/controllers/pdf_controller.rb +1 -0
  7. data/app/controllers/rails_connector/default_cms_controller.rb +8 -4
  8. data/app/controllers/rails_connector/default_comments_controller.rb +1 -2
  9. data/app/controllers/rails_connector/default_crm_form_controller.rb +13 -0
  10. data/app/controllers/rails_connector/default_pdf_controller.rb +2 -0
  11. data/app/controllers/rails_connector/default_rss_controller.rb +4 -1
  12. data/app/controllers/rails_connector/default_search_controller.rb +2 -0
  13. data/app/controllers/rails_connector/default_user_controller.rb +10 -0
  14. data/app/controllers/rails_connector/pdf_external_controller.rb +2 -1
  15. data/app/controllers/rails_connector/time_machine_controller.rb +1 -1
  16. data/app/controllers/rss_controller.rb +1 -0
  17. data/app/controllers/search_controller.rb +5 -0
  18. data/app/controllers/seo_sitemap_controller.rb +2 -0
  19. data/app/controllers/user_controller.rb +5 -0
  20. data/app/helpers/cms_helper.rb +2 -1
  21. data/app/helpers/cms_routing_helper.rb +2 -1
  22. data/app/helpers/crm_form_helper.rb +4 -0
  23. data/app/helpers/rails_connector/cms_asset_helper.rb +3 -0
  24. data/app/helpers/rails_connector/default_cms_helper.rb +1 -1
  25. data/app/helpers/rails_connector/default_cms_routing_helper.rb +10 -5
  26. data/app/helpers/rails_connector/default_crm_form_helper.rb +4 -0
  27. data/app/helpers/rails_connector/default_user_helper.rb +7 -1
  28. data/app/helpers/rails_connector/display_helper.rb +7 -5
  29. data/app/helpers/rails_connector/layout_helper.rb +3 -0
  30. data/app/helpers/rails_connector/link_helper.rb +3 -0
  31. data/app/helpers/rails_connector/mandatory_label_helper.rb +1 -1
  32. data/app/helpers/rails_connector/menu_helper.rb +2 -1
  33. data/app/helpers/rails_connector/micronav_helper.rb +2 -0
  34. data/app/helpers/rails_connector/seo_helper.rb +2 -0
  35. data/app/helpers/rails_connector/table_of_contents_helper.rb +2 -0
  36. data/app/helpers/rails_connector/time_machine_helper.rb +2 -0
  37. data/app/helpers/rails_connector/tracking_helper.rb +2 -0
  38. data/app/helpers/ratings_helper.rb +1 -1
  39. data/app/helpers/user_helper.rb +4 -0
  40. data/app/mailers/confirmation_mailer.rb +5 -0
  41. data/app/models/crm_form.rb +1 -0
  42. data/app/models/rails_connector/default_comment.rb +1 -1
  43. data/app/models/rails_connector/link_list.rb +3 -1
  44. data/lib/generators/rails_connector/comments/comments_generator.rb +0 -1
  45. data/lib/generators/rails_connector/comments/templates/migration.rb +0 -1
  46. data/lib/generators/rails_connector/install/install_generator.rb +0 -1
  47. data/lib/generators/rails_connector/install/templates/obj_extensions.rb +2 -1
  48. data/lib/generators/rails_connector/ratings/ratings_generator.rb +0 -1
  49. data/lib/generators/rails_connector/ratings/templates/migration.rb +0 -1
  50. data/lib/infopark_rails_connector.rb +4 -2
  51. data/lib/rails_connector/authenticable.rb +2 -2
  52. data/lib/rails_connector/cms_accessible.rb +14 -10
  53. data/lib/rails_connector/cms_dispatch_controller.rb +0 -1
  54. data/lib/rails_connector/cms_env.rb +0 -1
  55. data/lib/rails_connector/cms_test_request.rb +1 -1
  56. data/lib/rails_connector/commentable.rb +2 -2
  57. data/lib/rails_connector/configuration/google_analytics.rb +7 -4
  58. data/lib/rails_connector/configuration/pdf_generator.rb +3 -0
  59. data/lib/rails_connector/configuration/rss.rb +8 -2
  60. data/lib/rails_connector/configuration.rb +56 -27
  61. data/lib/rails_connector/core_extensions/time.rb +1 -1
  62. data/lib/rails_connector/crm.rb +54 -46
  63. data/lib/rails_connector/engine.rb +1 -1
  64. data/lib/rails_connector/fop.rb +2 -2
  65. data/lib/rails_connector/fop_on_rails/document/dom_tree.rb +1 -1
  66. data/lib/rails_connector/fop_on_rails/document/images.rb +1 -1
  67. data/lib/rails_connector/fop_on_rails/document/tables.rb +1 -1
  68. data/lib/rails_connector/fop_on_rails/document.rb +1 -1
  69. data/lib/rails_connector/fop_on_rails.rb +2 -2
  70. data/lib/rails_connector/googlebot_checker.rb +0 -1
  71. data/lib/rails_connector/html_string.rb +2 -2
  72. data/lib/rails_connector/link_resolvable.rb +1 -1
  73. data/lib/rails_connector/liquid_support/field_value_drop.rb +1 -1
  74. data/lib/rails_connector/liquid_support/link_drop.rb +1 -1
  75. data/lib/rails_connector/liquid_support/liquid_template_handler.rb +6 -6
  76. data/lib/rails_connector/liquid_support/named_object_drop.rb +1 -1
  77. data/lib/rails_connector/liquid_support/obj_drop.rb +1 -1
  78. data/lib/rails_connector/liquid_support/obj_filters.rb +1 -1
  79. data/lib/rails_connector/liquid_support.rb +4 -2
  80. data/lib/rails_connector/markdown_string.rb +2 -2
  81. data/lib/rails_connector/rateable.rb +1 -1
  82. data/lib/rails_connector/seo.rb +15 -7
  83. data/lib/rails_connector/ses.rb +13 -5
  84. data/lib/rails_connector/string_tagging.rb +1 -1
  85. data/lib/rails_connector/syndicateable.rb +3 -1
  86. data/lib/search_request.rb +1 -0
  87. metadata +15 -66
data/.yardopts ADDED
@@ -0,0 +1,5 @@
1
+ --hide-void-return
2
+ --protected
3
+ --private
4
+ --non-transitive-tag api
5
+ --api public
data/README CHANGED
@@ -1,17 +1,19 @@
1
1
  = Infopark Rails Connector
2
2
 
3
- Infopark Rails Connector allows you to integrate a number of ready-to-run features into your Rails application.
3
+ Infopark Rails Connector integrates Infopark’s CMS into your Rails application.
4
+
5
+ It connects either to Infopark Cloud Express CMS via {https://rubygems.org/gems/infopark_cloud_connector infopark_cloud_connector} or to Infopark CMS Fiona via {https://rubygems.org/gems/infopark_fiona_connector infopark_fiona_connector}. It also enables you to integrate various ready-to-run features.
6
+
7
+ For more information about Infopark Rails Connector, please visit {http://kb.infopark.de/ Infopark’s Knowledge Base}.
4
8
 
5
9
  == Configuration
6
- Here is how all available addons would be enabled in the <tt>rails_connector.rb</tt> initializer file of your application:
10
+ Here is how all available addons can be enabled in the <tt>rails_connector.rb</tt> initializer file of your application:
7
11
 
8
12
  RailsConnector::Configuration.enable(
9
- :comments,
10
13
  :google_analytics,
11
14
  :infopark_tracking,
12
- :omc,
15
+ :crm,
13
16
  :pdf_generator,
14
- :ratings,
15
17
  :rss,
16
18
  :search,
17
19
  :seo_sitemap,
@@ -37,23 +39,10 @@ That helper is to be put right before the closing body tag.
37
39
  == Generators
38
40
  Infopark Rails Connector comes with three generators to help you get up and running quickly:
39
41
 
40
- <tt>rails generate rails_connector:install</tt>
42
+ > rails generate rails_connector:install
41
43
 
42
44
  Adds Time machine assets, a +rails_connector.rb+ initializer and rake tasks specific to the gem to your application.
43
45
 
44
- <tt>rails generate rails_connector:comments</tt>
45
-
46
- Specific to the +comments+ feature. Adds a comments migration to your application.
47
-
48
- <tt>rails generate rails_connector:ratings</tt>
49
-
50
- Specific to the +ratings+ feature. Adds a ratings migration to your application as well as an example stylesheet and background image.
51
-
52
- == Infopark Tracking
53
-
54
- If you enable the infopark_tracking, please refer to the OMC documentation for further details,
55
- e.g. Apache logging options.
56
-
57
46
  == Seo Sitemap
58
47
 
59
- The default implementation for the seo sitemap will feature all files from your CMS in the generated <tt>sitemap.xml</tt>. For a large number of files, this can slow down your server. Please refer to <tt>RailsConnector::SEO::ClassMethods#find_all_for_sitemap</tt> for advise on optimization.
48
+ The default implementation for the seo sitemap will feature all files from your CMS in the generated <tt>sitemap.xml</tt>. For a large number of files, this can slow down your server. Please refer to {RailsConnector::SEO::ClassMethods#find_all_for_sitemap} for advise on optimization.
@@ -1,6 +1,7 @@
1
1
  # This controller inherits all of its behavior from
2
- # RailsConnector::DefaultCmsController.
2
+ # {RailsConnector::DefaultCmsController}.
3
3
  #
4
- # CmsController is referenced by the Rails Connector routes.
4
+ # {CmsController} is referenced by the Rails Connector routes.
5
+ # @api public
5
6
  class CmsController < RailsConnector::DefaultCmsController
6
7
  end
@@ -1,6 +1,6 @@
1
1
  # This controller inherits all of its behavior from
2
- # RailsConnector::DefaultCommentsController.
2
+ # {RailsConnector::DefaultCommentsController}.
3
3
  #
4
- # CommentsController is referenced by the Rails Connector routes.
4
+ # {CommentsController} is referenced by the Rails Connector routes.
5
5
  class CommentsController < RailsConnector::DefaultCommentsController
6
6
  end
@@ -1,2 +1,7 @@
1
+ # This controller inherits all of its behavior from
2
+ # {RailsConnector::DefaultCrmFormController}.
3
+ #
4
+ # {CrmFormController} is referenced by the Rails Connector routes.
5
+ # @api public
1
6
  class CrmFormController < RailsConnector::DefaultCrmFormController
2
7
  end
@@ -2,5 +2,6 @@
2
2
  # RailsConnector::DefaultPdfController.
3
3
  #
4
4
  # PdfController is referenced by the Rails Connector routes.
5
+ # @api public
5
6
  class PdfController < RailsConnector::DefaultPdfController
6
7
  end
@@ -1,9 +1,10 @@
1
1
  module RailsConnector
2
2
 
3
- # This controller provides some default includes (+CmsAccessible+),
3
+ # This controller provides some default includes ({CmsAccessible}),
4
4
  # before filters (+load_object+, among others), and actions to simplify
5
5
  # CMS object handling. It should never be used directly, but only as a
6
- # super class to CmsController.
6
+ # super class to {CmsController}.
7
+ # @api public
7
8
  class DefaultCmsController < ApplicationController
8
9
  include CmsAccessible
9
10
  before_filter :set_preview_time
@@ -13,11 +14,13 @@ module RailsConnector
13
14
  before_filter :set_google_expire_header
14
15
 
15
16
  # Default Action. Delivers files directly if their mime type is not text/html
17
+ # @api public
16
18
  def index
17
19
  deliver_file if @obj.mime_type != "text/html"
18
20
  end
19
21
 
20
22
  # Toggles edit markers. The current status is stored in the session.
23
+ # @api public
21
24
  def toggle_editmarkers
22
25
  session[:hide_editmarkers] = !session[:hide_editmarkers]
23
26
  redirect_to cms_id_url(@obj)
@@ -28,10 +31,11 @@ module RailsConnector
28
31
  #
29
32
  # Overwrite it to return false if you do want your controller to be excluded from Obj dispatching.
30
33
  #
31
- # You may also implement a method with the name +use_for_obj_dispatch?+ in controllers not
32
- # descending from +DefaultCmsController+ to include them in Obj dispatching.
34
+ # You may also implement a method with the name {use_for_obj_dispatch?} in controllers not
35
+ # descending from {DefaultCmsController} to include them in Obj dispatching.
33
36
  #
34
37
  # @see Obj#controller_name
38
+ # @api public
35
39
  def self.use_for_obj_dispatch?
36
40
  true
37
41
  end
@@ -1,10 +1,9 @@
1
1
  module RailsConnector
2
2
  #
3
3
  # This class provides a default controller implementation for comment creation.
4
- # It should only be used indirectly via a subclass named CommentsController.
4
+ # It should only be used indirectly via a subclass named {CommentsController}.
5
5
  #
6
6
  # The controller actions only respond to XMLHttpRequests (Ajax).
7
- #
8
7
  class DefaultCommentsController < ApplicationController
9
8
  layout nil
10
9
 
@@ -1,6 +1,7 @@
1
1
  module RailsConnector
2
2
  # This class provides a default controller implementation for WebCRM form using custom attributes.
3
3
  # It should be customized by subclassing.
4
+ # @api public
4
5
  class DefaultCrmFormController < DefaultCmsController
5
6
 
6
7
  include Crm::Localizable
@@ -13,6 +14,7 @@ module RailsConnector
13
14
  :contact => [:gender, :first_name, :last_name, :email]
14
15
  }
15
16
 
17
+ # @api public
16
18
  def index
17
19
  unless logged_in?
18
20
  @user = Infopark::Crm::Contact.new(:language => default_language)
@@ -46,6 +48,7 @@ module RailsConnector
46
48
  # Override this method for custom logic to get from a given OBJ to an activity kind.
47
49
  #
48
50
  # Defaults to +@obj[:activity_kind]+ or 'contact form' if the former is +nil+.
51
+ # @api public
49
52
  def activity_kind
50
53
  @obj[:activity_kind] || 'contact form'
51
54
  end
@@ -53,6 +56,7 @@ module RailsConnector
53
56
  # Returns the state of a new activity.
54
57
  #
55
58
  # Defaults to the first state assigned to +activity_kind+.
59
+ # @api public
56
60
  def activity_state
57
61
  Infopark::Crm::CustomType.find(activity_kind).states.first
58
62
  end
@@ -64,6 +68,7 @@ module RailsConnector
64
68
  # an additional form field to the corresponding view.
65
69
  #
66
70
  # Defaults to the current locale.
71
+ # @api public
67
72
  def default_language
68
73
  I18n.locale.to_s
69
74
  end
@@ -75,6 +80,7 @@ module RailsConnector
75
80
  # the behavior without having to override #index.
76
81
  #
77
82
  # By default, it assigns a default title if +has_title_input_field?+ is +false+.
83
+ # @api public
78
84
  def before_saving_activity(activity)
79
85
  activity.title = "Website form submission" unless has_title_input_field?
80
86
  end
@@ -86,6 +92,7 @@ module RailsConnector
86
92
  # The method is also available as helper in your views.
87
93
  #
88
94
  # By default, it renders crm_form/confirmation
95
+ # @api public
89
96
  def after_saving_activity(activity)
90
97
  render 'crm_form/confirmation'
91
98
  end
@@ -94,6 +101,7 @@ module RailsConnector
94
101
  # Override this method to return +false+ if you want to set the title programmatically.
95
102
  #
96
103
  # By default, it returns +true+
104
+ # @api public
97
105
  def has_title_input_field?
98
106
  true
99
107
  end
@@ -105,6 +113,7 @@ module RailsConnector
105
113
  # and custom attributes that are not to be set by users.
106
114
  #
107
115
  # By default, it returns a hash only with title and custom values.
116
+ # @api public
108
117
  def sanitize_activity_params(activity_params_or_nil)
109
118
  activity_params_whitelist = [:title]
110
119
  (activity_params_or_nil || {}).reject do |attr, value|
@@ -118,6 +127,7 @@ module RailsConnector
118
127
  #
119
128
  # Drop a custom view to change the look, or override this method
120
129
  # if you want different behavior, like a redirect.
130
+ # @api public
121
131
  def authorize
122
132
  render 'not_logged_in' unless logged_in? || allow_anonymous?
123
133
  end
@@ -129,6 +139,7 @@ module RailsConnector
129
139
  # The method is also available as helper in your views.
130
140
  #
131
141
  # By default, it returns +false+, i.e. only logged-in users can see the form
142
+ # @api public
132
143
  def allow_anonymous?
133
144
  false
134
145
  end
@@ -141,6 +152,7 @@ module RailsConnector
141
152
  #
142
153
  # By default, it returns +true+ for any attribute, i.e. every custom attribute
143
154
  # can be filled in by the user.
155
+ # @api public
144
156
  def allow_custom_attribute?(attribute_name)
145
157
  true
146
158
  end
@@ -159,6 +171,7 @@ module RailsConnector
159
171
  # }
160
172
  #
161
173
  # end
174
+ # @api public
162
175
  def editable_attributes_on_register
163
176
  self.class.editable_attributes_on_register
164
177
  end
@@ -58,6 +58,7 @@ module RailsConnector
58
58
  # "white list", then an error message will be rendered as inline text with response status "403
59
59
  # Forbidden".
60
60
  #
61
+ # @api public
61
62
  class DefaultPdfController < DefaultCmsController
62
63
  # Returns false by default to exclude this controller from regular Obj dispatch.
63
64
  # @see DefaultCmsController#use_for_obj_dispatch?
@@ -92,6 +93,7 @@ module RailsConnector
92
93
  # <%= link_to 'Generate PDF', pdf_path(@obj) %>
93
94
  # # This will generate a PDF containing the title and the body of the current object
94
95
  #
96
+ # @api public
95
97
  def index
96
98
  end
97
99
 
@@ -8,12 +8,15 @@ module RailsConnector
8
8
  # Specify the RSS root in
9
9
  # <code><em>RAILS_ROOT</em>/config/initializers/rails_connector.rb</code>:
10
10
  # RailsConnector::Configuration::Rss.root = lambda { NamedLink.get_object('news') }
11
+ # @api public
11
12
  class DefaultRssController < DefaultCmsController
12
13
  #
13
14
  # This action renders the built-in RSS feed.
14
15
  #
15
16
  # To customize feed's layout, override either this method, or the apropriate view.
16
17
  #
18
+ # @return [void]
19
+ # @api public
17
20
  def index
18
21
  respond_to do |format|
19
22
  format.rss
@@ -22,7 +25,7 @@ module RailsConnector
22
25
 
23
26
  protected
24
27
 
25
- def load_object # :nodoc:
28
+ def load_object
26
29
  @obj = Configuration::Rss.root
27
30
  end
28
31
  end
@@ -4,6 +4,7 @@ module RailsConnector
4
4
 
5
5
  # This class provides a default controller implementation for searching.
6
6
  # It should be customized by subclassing.
7
+ # @api public
7
8
  class DefaultSearchController < ApplicationController
8
9
  class_attribute :options
9
10
  self.options = {:limit => 10}
@@ -27,6 +28,7 @@ module RailsConnector
27
28
  # # * Flash on errors
28
29
  # end
29
30
  # end
31
+ # @api public
30
32
  def search
31
33
  unless (@query = params[:q]).blank?
32
34
  @hits = WillPaginate::Collection.create(current_page, options[:limit]) do |pager|
@@ -14,6 +14,7 @@ module RailsConnector
14
14
  # This can be done in your <tt>rails_connector.rb</tt> or in +UserController+ directly.
15
15
  #
16
16
  # By default, users can submit their first name, last name, email and company name.
17
+ # @api public
17
18
  class DefaultUserController < ApplicationController
18
19
 
19
20
  before_filter :check_editable_attribute_configuration
@@ -44,6 +45,7 @@ module RailsConnector
44
45
  end
45
46
 
46
47
  # Displays a profile page containing links to all available actions
48
+ # @api public
47
49
  def profile
48
50
  end
49
51
 
@@ -61,6 +63,7 @@ module RailsConnector
61
63
  #
62
64
  # If you merely want to change what happens before or after a user is authenticated,
63
65
  # do not override this method but override +before_authenticate+ or +after_authenticate+.
66
+ # @api public
64
67
  def login
65
68
  if request.post?
66
69
  @user = Infopark::Crm::Contact.new(params[:user] || {:login => nil, :password => nil})
@@ -87,6 +90,7 @@ module RailsConnector
87
90
  #
88
91
  # To change the behavior before or after invalidating the session,
89
92
  # override +before_logout+ or +after_logout+.
93
+ # @api public
90
94
  def logout
91
95
  before_logout
92
96
  self.current_user = nil
@@ -100,6 +104,7 @@ module RailsConnector
100
104
  #
101
105
  # If you merely want to change what happens before or after a user is registered,
102
106
  # do not override this method but override +before_register+ or +after_register+.
107
+ # @api public
103
108
  def new
104
109
  @user = Infopark::Crm::Contact.new
105
110
  # Load some default attributes so that form_for is working
@@ -119,10 +124,12 @@ module RailsConnector
119
124
  flash.now[:error] = tcon('registration_failed')
120
125
  end
121
126
 
127
+ # @api public
122
128
  def register_pending
123
129
  end
124
130
 
125
131
  # Lets the user change his/her user details.
132
+ # @api public
126
133
  def edit
127
134
  @user = Infopark::Crm::Contact.find(current_user.id)
128
135
  if request.post? || request.put?
@@ -138,6 +145,7 @@ module RailsConnector
138
145
  # Lets the user change his/her password.
139
146
  #
140
147
  # Validates the new password using +validate_edit_password_params_for+.
148
+ # @api public
141
149
  def edit_password
142
150
  if request.post?
143
151
  validate_edit_password_params_for(params[:user])
@@ -153,6 +161,7 @@ module RailsConnector
153
161
  # Lets the user request a new password (double opt-in).
154
162
  #
155
163
  # Uses the +ConfirmationMailer+ for sending out the confirmation message.
164
+ # @api public
156
165
  def forgot_password
157
166
  if request.post?
158
167
  user = Infopark::Crm::Contact.search(:params => {:login => params[:user][:login]}).first
@@ -167,6 +176,7 @@ module RailsConnector
167
176
  end
168
177
  end
169
178
 
179
+ # @api public
170
180
  def set_password
171
181
  if request.get? && params[:token].blank?
172
182
  flash[:error] = tcon('token_url_invalid')
@@ -1,5 +1,6 @@
1
1
  module RailsConnector
2
- class PdfExternalController < ApplicationController # :nodoc: all
2
+
3
+ class PdfExternalController < ApplicationController
3
4
  skip_before_filter :verify_authenticity_token
4
5
  before_filter :validate_inputs
5
6
 
@@ -1,6 +1,6 @@
1
1
  module RailsConnector
2
2
 
3
- class TimeMachineController < ApplicationController #:nodoc:
3
+ class TimeMachineController < ApplicationController
4
4
 
5
5
  protect_from_forgery :except => :set_preview_time
6
6
 
@@ -2,5 +2,6 @@
2
2
  # RailsConnector::DefaultRssController.
3
3
  #
4
4
  # RssController is referenced by the Rails Connector routes.
5
+ # @api public
5
6
  class RssController < RailsConnector::DefaultRssController
6
7
  end
@@ -1,2 +1,7 @@
1
+ # This controller inherits all of its behavior from
2
+ # {RailsConnector::DefaultSearchController}.
3
+ #
4
+ # {SearchController} is referenced by the Rails Connector routes.
5
+ # @api public
1
6
  class SearchController < RailsConnector::DefaultSearchController
2
7
  end
@@ -1,9 +1,11 @@
1
1
  # Renders a search engine optimized sitemap.xml
2
2
  # Enable via <tt>RailsConnector::Configuration.enable(:seo_sitemap)</tt>
3
+ # @api public
3
4
  class SeoSitemapController < ApplicationController
4
5
  layout nil
5
6
 
6
7
  # Finds all objects which are to be shown in the SEO sitemap. Responds to xml only.
8
+ # @api public
7
9
  def show
8
10
  @objects = Obj.find_all_for_sitemap
9
11
  respond_to { |format| format.xml }
@@ -1,2 +1,7 @@
1
+ # This controller inherits all of its behavior from
2
+ # {RailsConnector::DefaultUserController}.
3
+ #
4
+ # {UserController} is referenced by the Rails Connector routes.
5
+ # @api public
1
6
  class UserController < RailsConnector::DefaultUserController
2
7
  end
@@ -1,6 +1,7 @@
1
- # CmsHelper is a wrapper around RailsConnector::DefaultCmsHelper.
1
+ # {CmsHelper} is a wrapper around {RailsConnector::DefaultCmsHelper}.
2
2
  # It can be replaced in your application in order to add or
3
3
  # modify helpers.
4
+ # @api public
4
5
  module CmsHelper
5
6
  include RailsConnector::DefaultCmsHelper
6
7
  end
@@ -1,6 +1,7 @@
1
- # CmsRoutingHelper is a wrapper around RailsConnector::DefaultCmsRoutingHelper.
1
+ # {CmsRoutingHelper} is a wrapper around {RailsConnector::DefaultCmsRoutingHelper}.
2
2
  # It can be replaced in your application in order to add or
3
3
  # modify helpers.
4
+ # @api public
4
5
  module CmsRoutingHelper
5
6
  include RailsConnector::DefaultCmsRoutingHelper
6
7
  end
@@ -1,3 +1,7 @@
1
+ # {CrmFormHelper} is a wrapper around {RailsConnector::DefaultCrmFormHelper}.
2
+ # It can be replaced in your application in order to add or
3
+ # modify helpers.
4
+ # @api public
1
5
  module CrmFormHelper
2
6
  include RailsConnector::DefaultCrmFormHelper
3
7
  end
@@ -5,6 +5,7 @@ module RailsConnector
5
5
  # Use this helper to take advantage of rails' asset host mechanism.
6
6
  # (See http://api.rubyonrails.com/classes/ActionView/Helpers/AssetTagHelper.html for details about asset hosts.)
7
7
  # If your application does not use any asset hosts, the helper will generate regular (=non asset host) pathes.
8
+ # @api public
8
9
  module CmsAssetHelper
9
10
 
10
11
  # Returns an html image tag for an image stored in the CMS.
@@ -16,6 +17,7 @@ module RailsConnector
16
17
  # +target+'s +display_title+ as the html alt attribute.
17
18
  # If your application is configured to use asset hosts, the images tag will reference
18
19
  # the image using one of your asset hosts.
20
+ # @api public
19
21
  def cms_image_tag(target, options = {})
20
22
  options.symbolize_keys!
21
23
 
@@ -31,6 +33,7 @@ module RailsConnector
31
33
  # +target+ can be an +Obj+ or a +Link+ or a +LinkList+.
32
34
  # If your application is configured to use asset hosts, the path will reference
33
35
  # the object using one of your asset hosts.
36
+ # @api public
34
37
  def cms_asset_path(target)
35
38
  regular_path = cms_path(target)
36
39
  return regular_path if regular_path.first == "#"
@@ -8,7 +8,7 @@ module RailsConnector
8
8
  # module CmsHelper
9
9
  # include RailsConnector::DefaultCmsHelper
10
10
  # end
11
-
11
+ # @api public
12
12
  module DefaultCmsHelper
13
13
  include DisplayHelper
14
14
  include MarkerHelper
@@ -1,11 +1,14 @@
1
1
  module RailsConnector
2
2
 
3
+ # @api public
3
4
  module DefaultCmsRoutingHelper
4
5
  # Returns the path for +target+ using the +CmsController+ routes.
5
6
  # +target+ can be an +Obj+ or a +Link+ or a +LinkList+.
6
7
  # If +target+ is a +Linklist+, it must be non-empty. The first +Link+ from the +LinkList+ will be used.
7
8
  # +options+ are optional and include url settings such as path parameters or protocol
8
9
  # +options+ are only passed on if +target+ is an +Obj+.
10
+ # @return [String]
11
+ # @api public
9
12
  def cms_path(target, options = {})
10
13
  cms_path_or_url(target, "path", options)
11
14
  end
@@ -15,14 +18,16 @@ module RailsConnector
15
18
  # If +target+ is a +Linklist+, it must be non-empty. The first +Link+ from the +LinkList+ will be used.
16
19
  # +options+ are optional and include url settings such as path parameters or protocol
17
20
  # +options+ are only passed on if +target+ is an +Obj+.
21
+ # @return [String]
22
+ # @api public
18
23
  def cms_url(target, options = {})
19
24
  cms_path_or_url(target, "url", options)
20
25
  end
21
26
 
22
- LINK_TO_UNREACHABLE = "#__target_object_not_reachable" #:nodoc:
23
- LINK_TO_EMPTY_LINKLIST = "#__empty_linklist" #:nodoc:
27
+ LINK_TO_UNREACHABLE = "#__target_object_not_reachable"
28
+ LINK_TO_EMPTY_LINKLIST = "#__empty_linklist"
24
29
 
25
- def cms_path_or_url(target, path_or_url, options = {}) #:nodoc:
30
+ def cms_path_or_url(target, path_or_url, options = {})
26
31
  if target.is_a?(Link)
27
32
  cms_path_or_url_for_links(target, path_or_url)
28
33
  elsif target.is_a?(Obj)
@@ -39,14 +44,14 @@ module RailsConnector
39
44
  end
40
45
  end
41
46
 
42
- def cms_path_or_url_for_links(link, path_or_url) #:nodoc:
47
+ def cms_path_or_url_for_links(link, path_or_url)
43
48
  return LINK_TO_UNREACHABLE if link.internal? && link.destination_object.nil?
44
49
  append_search_and_fragment(
45
50
  basic_url_or_path_for_link(link, path_or_url), link
46
51
  )
47
52
  end
48
53
 
49
- def cms_path_or_url_for_objs(obj, path_or_url, options = {}) #:nodoc:
54
+ def cms_path_or_url_for_objs(obj, path_or_url, options = {})
50
55
  permalink = obj.permalink
51
56
  if permalink && !Configuration.editor_interface_enabled?
52
57
  __send__("cms_permalink_#{path_or_url}", options.merge(:permalink => permalink))
@@ -1,11 +1,13 @@
1
1
  module RailsConnector
2
2
 
3
+ # @api public
3
4
  module DefaultCrmFormHelper
4
5
 
5
6
  include ::RailsConnector::DefaultUserHelper
6
7
  include ::RailsConnector::MandatoryLabelHelper
7
8
  include ::RailsConnector::ErrorMessagesHelper
8
9
 
10
+ # @api public
9
11
  def custom_fields_for(form)
10
12
  activity = instance_variable_get("@#{form.object_name}")
11
13
  custom_attribute_defs = Infopark::Crm::CustomType.find(activity.kind).custom_attributes
@@ -35,6 +37,7 @@ module RailsConnector
35
37
  content
36
38
  end
37
39
 
40
+ # @api public
38
41
  def title_field_for(form)
39
42
  content = "".html_safe
40
43
  if has_title_input_field?
@@ -48,6 +51,7 @@ module RailsConnector
48
51
  content
49
52
  end
50
53
 
54
+ # @api public
51
55
  def logged_in_as(user)
52
56
  content_tag(:em) do
53
57
  t('rails_connector.views.crm_form.logged_in_as',
@@ -2,7 +2,8 @@ require "recaptcha"
2
2
 
3
3
  module RailsConnector
4
4
 
5
- # This module contains helpers for the +UserController+ and +DefaultUserController+
5
+ # This module contains helpers for the {UserController} and {DefaultUserController}
6
+ # @api public
6
7
  module DefaultUserHelper
7
8
 
8
9
  include ::ReCaptcha::ViewHelper
@@ -10,6 +11,7 @@ module RailsConnector
10
11
  include ::RailsConnector::ErrorMessagesHelper
11
12
 
12
13
  # Returns mandatory user fields as array of symbols.
14
+ # @api public
13
15
  def mandatory_user_fields
14
16
  [:email, :gender, :language, :last_name]
15
17
  end
@@ -38,6 +40,7 @@ module RailsConnector
38
40
  # user:
39
41
  # first_name: First name
40
42
  # last_name: Last name
43
+ # @api public
41
44
  def user_fields_for(form, model_name, *attributes)
42
45
  output = "".html_safe
43
46
  attributes.flatten.each do |attr|
@@ -63,6 +66,7 @@ module RailsConnector
63
66
  output
64
67
  end
65
68
 
69
+ # @api public
66
70
  def genders_for_select
67
71
  [
68
72
  ['', 'N'],
@@ -71,6 +75,7 @@ module RailsConnector
71
75
  ]
72
76
  end
73
77
 
78
+ # @api public
74
79
  def languages_for_select_for(*languages)
75
80
  options = []
76
81
  languages.flatten.each do |lang|
@@ -79,6 +84,7 @@ module RailsConnector
79
84
  options
80
85
  end
81
86
 
87
+ # @api public
82
88
  def profile_fields_for(form, editable_attributes={})
83
89
  output = "".html_safe
84
90
  output += user_fields_for(form, "contact", editable_attributes[:contact])