Class: Caboose::CorePlugin

Inherits:
CaboosePlugin show all
Defined in:
app/models/caboose/core_plugin.rb

Class Method Summary collapse

Methods inherited from CaboosePlugin

page_content

Class Method Details

.admin_nav(nav, user, page, site) ⇒ Object



3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
# File 'app/models/caboose/core_plugin.rb', line 3

def self.admin_nav(nav, user, page, site)    
  return nav if user.nil?
      
  nav << { 'id' => 'logout'       , 'text' => 'Logout'     , 'href' => '/logout'     , 'modal' => false }    
  nav << { 'id' => 'my-account'   , 'text' => 'My Account' , 'href' => '/my-account' , 'modal' => true }
  
  item = { 'id' => 'core', 'text' => 'Settings', 'children' => [] }                        
  item['children'] << { 'id' => 'blocktypes'       , 'text' => 'AB Test Variants'    , 'href' => '/admin/ab-variants'        , 'modal' => false } if user.is_allowed('abvariants'   , 'view')    
  item['children'] << { 'id' => 'blocktypes'       , 'text' => 'Block Types'         , 'href' => '/admin/block-types'        , 'modal' => false } if user.is_allowed('blocktypes'   , 'view')
  item['children'] << { 'id' => 'redirects'        , 'text' => 'Permanent Redirects' , 'href' => '/admin/redirects'          , 'modal' => false } if user.is_allowed('redirects'    , 'view')
  item['children'] << { 'id' => 'permissions'      , 'text' => 'Permissions'         , 'href' => '/admin/permissions'        , 'modal' => false } if user.is_allowed('permissions'  , 'view')
  item['children'] << { 'id' => 'roles'            , 'text' => 'Roles'               , 'href' => '/admin/roles'              , 'modal' => false } if user.is_allowed('roles'        , 'view')
  item['children'] << { 'id' => 'sites'            , 'text' => 'Sites'               , 'href' => '/admin/sites'              , 'modal' => false } if user.is_allowed('sites'        , 'view') if site.name == 'application'
  item['children'] << { 'id' => 'smtp'             , 'text' => 'SMTP (Mail)'         , 'href' => '/admin/smtp'               , 'modal' => false } if user.is_allowed('smtp'         , 'view')
  item['children'] << { 'id' => 'social'           , 'text' => 'Social Media'        , 'href' => '/admin/social'             , 'modal' => false } if user.is_allowed('social'       , 'view')
  item['children'] << { 'id' => 'store'            , 'text' => 'Store'               , 'href' => '/admin/store'              , 'modal' => false } if user.is_allowed('store'        , 'view')
  item['children'] << { 'id' => 'users'            , 'text' => 'Users'               , 'href' => '/admin/users'              , 'modal' => false } if user.is_allowed('users'        , 'view')      
  item['children'] << { 'id' => 'variables'        , 'text' => 'Variables'           , 'href' => '/admin/settings'           , 'modal' => false } if user.is_allowed('settings'     , 'view')    
  nav << item if item['children'].count > 0
  
  item = { 'id' => 'content', 'text' => 'Content', 'children' => [] }    
  item['children'] << { 'id' => 'pages'        , 'text' => 'Pages'       , 'href' => '/admin/pages'        , 'modal' => false } if user.is_allowed('pages'       , 'view')
  item['children'] << { 'id' => 'posts'        , 'text' => 'Posts'       , 'href' => '/admin/posts'        , 'modal' => false } if user.is_allowed('posts'       , 'view')
  item['children'] << { 'id' => 'calendars'    , 'text' => 'Calendars'   , 'href' => '/admin/calendars'    , 'modal' => false } if user.is_allowed('calendars'   , 'view')  
  nav << item if item['children'].count > 0
  
  if site.use_store      
    item = { 'id' => 'store', 'text' => 'Store', 'children' => [] }
    item['children'] << { 'id' => 'categories'       , 'href' => '/admin/categories'        , 'text' => 'Categories'        , 'modal' => false } if user.is_allowed('categories'       , 'view')
    item['children'] << { 'id' => 'giftcards'        , 'href' => '/admin/gift-cards'        , 'text' => 'Gift Cards'        , 'modal' => false } if user.is_allowed('giftcards'        , 'view')
    item['children'] << { 'id' => 'orders'           , 'href' => '/admin/orders'            , 'text' => 'Orders'            , 'modal' => false } if user.is_allowed('orders'           , 'view')
    item['children'] << { 'id' => 'products'         , 'href' => '/admin/products'          , 'text' => 'Products'          , 'modal' => false } if user.is_allowed('products'         , 'view')
    item['children'] << { 'id' => 'shippingpackages' , 'href' => '/admin/shipping-packages' , 'text' => 'Shipping Packages' , 'modal' => false } if user.is_allowed('shippingpackages' , 'view')
    item['children'] << { 'id' => 'vendors'          , 'href' => '/admin/vendors'           , 'text' => 'Vendors'           , 'modal' => false } if user.is_allowed('vendors'          , 'view')    
    nav << item if item['children'].count > 0
  end
              
  return nav
end

.block_types(block_types) ⇒ Object



43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
# File 'app/models/caboose/core_plugin.rb', line 43

def self.block_types(block_types)
  block_types << {
    :id => 'heading',
    :name => "Heading",
    :attributes => [        
      { name: 'text' , nice_name: 'Text' , type: 'text'  , default: '', width: 800, fixed_placeholder: false },
      { name: 'size' , nice_name: 'Size' , type: 'select', default: 1, width: 800, fixed_placeholder: false, options: ["1 - Largest", "2", "3", "4", "5", "6"]}        
    ]
  }
  block_types << {
    :id => 'richtext',
    :name => "Rich Text",
    :attributes => [        
      { name: 'text' , nice_name: 'Text' , type: 'richtext', default: '', width: 800, height: 400, fixed_placeholder: false }                
    ]
  }
  return block_types
end

.global_js_assets(files) ⇒ Object



62
63
64
# File 'app/models/caboose/core_plugin.rb', line 62

def self.global_js_assets(files)
  return files
end