Class: CamaleonCms::NavMenu

Inherits:
TermTaxonomy
  • Object
show all
Defined in:
app/models/camaleon_cms/nav_menu.rb

Overview

Camaleon CMS is a content management system

Copyright (C) 2015 by Owen Peredo Diaz
Email: [email protected]
This program is free software: you can redistribute it and/or modify   it under the terms of the GNU Affero General Public License as  published by the Free Software Foundation, either version 3 of the  License, or (at your option) any later version.
This program is distributed in the hope that it will be useful,  but WITHOUT ANY WARRANTY; without even the implied warranty of  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
See the  GNU Affero General Public License (GPLv3) for more details.

Instance Method Summary collapse

Methods inherited from TermTaxonomy

#children, #in_nav_menu_items, #set_options_from_form

Methods included from CustomFieldsRead

#add_custom_field_group, #add_custom_field_to_default_group, #get_field!, #get_field_groups, #get_field_object, #get_field_value, #get_field_values, #get_field_values_hash, #get_fields_object, #get_user_field_groups, #save_field_value, #set_field_values, #update_field_value

Methods included from Metas

#delete_meta, #delete_option, #fix_save_metas_options_no_changed, #get_meta, #get_option, #options, #save_metas_options, #save_metas_options_skip, #set_meta, #set_multiple_options, #set_option

Instance Method Details

#add_menu_items(menu_data = []) ⇒ Object

add multiple menu items for current menu only used from form


16
17
18
19
# File 'app/models/camaleon_cms/nav_menu.rb', line 16

def add_menu_items(menu_data=[])
  children.destroy_all
  saved_nav_items(self, menu_data) if menu_data.present?
end

#append_menu_item(value) ⇒ Object

add menu item for current menu value: (Hash) is a hash object that contains label, type, link

options for type: post | category | post_type | post_tag | external

sample: “my label”, type: “external”, link: “camaleon.tuzitio.com” sample: “my label”, type: “post”, link: 10 sample: “my label”, type: “category”, link: 12 return item created


28
29
30
31
# File 'app/models/camaleon_cms/nav_menu.rb', line 28

def append_menu_item (value)
  item = children.create({name: value[:label], data_options: {type: value[:type], object_id: value[:link]}})
  item
end

#skip_slug_validation?Boolean

skip uniq slug validation

Returns:

  • (Boolean)

34
35
36
# File 'app/models/camaleon_cms/nav_menu.rb', line 34

def skip_slug_validation?
  true
end