Security

Token

Authenticated
Property Value
Roles
[
  "ROLE_USER"
  "ROLE_NILEAD_SUPER_ADMIN"
  "ROLE_NILEAD_DEFAULT_ADMIN"
  "ROLE_NILEAD_EDITOR"
  "ROLE_NILEAD_ECOMMERCE"
]
Inherited Roles none
Token
Symfony\Component\Security\Core\Authentication\Token\RememberMeToken {#3979
  -user: Nilead\AccountBundle\Model\LiteAccount {#3977 …}
  -roleNames: [
    "ROLE_USER"
    "ROLE_NILEAD_SUPER_ADMIN"
    "ROLE_NILEAD_DEFAULT_ADMIN"
    "ROLE_NILEAD_EDITOR"
    "ROLE_NILEAD_ECOMMERCE"
  ]
  -attributes: []
  -secret: "3c50c498a052c27f502c8ebd8741ed0b"
  -firewallName: "backend"
}

Firewall

backend Name
Security enabled
Stateless

Configuration

Key Value
provider nilead.account.account_provider.username_email
context backend
entry_point nilead.account.security.entry_point.login
user_checker security.user_checker
access_denied_handler (none)
access_denied_url (none)
authenticators
[
  "two_factor"
  "form_login"
  "remember_me"
]

Listeners

Listener Duration Response
Symfony\Component\Security\Http\Firewall\ChannelListener {#3895
  -map: Symfony\Component\Security\Http\AccessMap {#3896 …}
  -logger: Monolog\Logger {#3885 …}
  -httpPort: 80
  -httpsPort: 443
}
0.00 ms (none)
Symfony\Component\Security\Http\Firewall\ContextListener {#3959
  -tokenStorage: Symfony\Component\Security\Core\Authentication\Token\Storage\TokenStorage {#1480 …}
  -sessionKey: "_security_backend"
  -logger: Monolog\Logger {#3885 …}
  -userProviders: Symfony\Component\DependencyInjection\Argument\RewindableGenerator {#3960 …}
  -dispatcher: Symfony\Component\EventDispatcher\Debug\TraceableEventDispatcher {#3849 …}
  -registered: false
  -trustResolver: Scheb\TwoFactorBundle\Security\Authentication\AuthenticationTrustResolver {#3880 …}
  -sessionTrackerEnabler: Symfony\Component\Security\Core\Authentication\Token\Storage\UsageTrackingTokenStorage::enableUsageTracking(): void {#3962 …}
}
2.75 ms (none)
Symfony\Component\Security\Http\Firewall\AuthenticatorManagerListener {#4133
  -authenticatorManager: Symfony\Component\Security\Http\Authentication\AuthenticatorManager {#4131 …}
}
0.00 ms (none)
Symfony\Component\Security\Http\Firewall\LogoutListener {#3888
  -tokenStorage: Symfony\Component\Security\Core\Authentication\Token\Storage\UsageTrackingTokenStorage {#1479 …}
  -options: [
    "csrf_parameter" => "_csrf_token"
    "csrf_token_id" => "logout"
    "logout_path" => "nilead.account.backend.account.logout"
  ]
  -httpUtils: Symfony\Component\Security\Http\HttpUtils {#1488 …}
  -csrfTokenManager: null
  -eventDispatcher: Symfony\Component\EventDispatcher\Debug\TraceableEventDispatcher {#3849 …}
}
0.00 ms (none)
Scheb\TwoFactorBundle\Security\Http\Firewall\TwoFactorAccessListener {#4137
  -twoFactorFirewallConfig: Scheb\TwoFactorBundle\Security\TwoFactor\TwoFactorFirewallConfig {#1486 …}
  -tokenStorage: Symfony\Component\Security\Core\Authentication\Token\Storage\UsageTrackingTokenStorage {#1479 …}
  -twoFactorAccessDecider: Scheb\TwoFactorBundle\Security\Authorization\TwoFactorAccessDecider {#4138 …}
}
0.01 ms (none)
Symfony\Component\Security\Http\Firewall\AccessListener {#4139
  -tokenStorage: Symfony\Component\Security\Core\Authentication\Token\Storage\UsageTrackingTokenStorage {#1479 …}
  -accessDecisionManager: Symfony\Component\Security\Core\Authorization\TraceableAccessDecisionManager {#410 …}
  -map: Symfony\Component\Security\Http\AccessMap {#3896 …}
}
6.53 ms (none)

Authenticators

No authenticators have been recorded. Check previous profiles on your authentication endpoint.

Access Decision

unanimous Strategy
# Voter class
1
"Symfony\Component\Security\Core\Authorization\Voter\AuthenticatedVoter"
2
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
3
"Symfony\Component\Security\Core\Authorization\Voter\RoleHierarchyVoter"
4
"Symfony\Component\Security\Core\Authorization\Voter\ExpressionVoter"
5
"Nilead\ResourceBundle\Security\Voter\LockableVoter"
6
"Nilead\CartBundle\Security\Authorization\CartVoter"
7
"Nilead\CartBundle\Security\Authorization\WishListVoter"
8
"Nilead\CommentBundle\Security\Voter\CommentVoter"
9
"Nilead\CommentBundle\Security\Voter\NoteVoter"
10
"Nilead\PartyBundle\Security\Voter\StaffVoter"
11
"Nilead\PartyBundle\Security\Voter\CustomerVoter"
12
"Nilead\PartyBundle\Security\Voter\PartyNotificationVoter"
13
"Nilead\PartyBundle\Security\Voter\PartyConversationVoter"
14
"Nilead\PartyBundle\Security\Voter\PartyInboxVoter"
15
"Nilead\ProductBundle\Security\Authorization\WidgetProductVoter"
16
"Nilead\ProjectBundle\Security\Voter\MilestoneVoter"
17
"Nilead\ProjectBundle\Security\Voter\PlanTaskVoter"
18
"Nilead\SalesBundle\Security\Authorization\OrderVoter"
19
"Nilead\SalesBundle\Security\Authorization\SubscriptionVoter"
20
"Nilead\SecurityBundle\Authorization\Voter\PermissionVoter"
21
"Nilead\ThemeBundle\Security\Voter\PageVoter"
22
"Nilead\TicketBundle\Security\Voter\TicketVoter"
23
"Nilead\SearchBundle\Security\Voter\SearchSaveVoter"

Access decision log

# Result Attributes Object
1 GRANTED ROLE_NILEAD_DEFAULT_ADMIN
Symfony\Component\HttpFoundation\Request {#22
  +attributes: Symfony\Component\HttpFoundation\ParameterBag {#25 …}
  +request: Symfony\Component\HttpFoundation\ParameterBag {#1814 …}
  +query: Symfony\Component\HttpFoundation\InputBag {#24 …}
  +server: Symfony\Component\HttpFoundation\ServerBag {#28 …}
  +files: Symfony\Component\HttpFoundation\FileBag {#27 …}
  +cookies: Symfony\Component\HttpFoundation\InputBag {#26 …}
  +headers: Symfony\Component\HttpFoundation\HeaderBag {#29 …}
  #content: ""
  #languages: null
  #charsets: null
  #encodings: null
  #acceptableContentTypes: null
  #pathInfo: "/backend/block/widget/525599/update_mapping"
  #requestUri: "/app_dev.php/backend/block/widget/525599/update_mapping?dump_form=1&updated=0"
  #baseUrl: "/app_dev.php"
  #basePath: null
  #method: "GET"
  #format: "json"
  #session: Symfony\Component\HttpFoundation\Session\Session {#3968 …}
  #locale: "en"
  #defaultLocale: "en"
  -preferredFormat: null
  -isHostValid: true
  -isForwardedValid: true
  -isSafeContentPreferred: ? bool
  -trustedValuesCache: [
    "8\x00\x00\x00" => []
    "2\x00\x00123.21.217.188\x00" => []
    "4\x00\x00\x00" => []
    "32\x00\x00\x00" => []
    "16\x00\x00\x00" => []
  ]
  -isIisRewrite: false
  basePath: ""
}
"Symfony\Component\Security\Core\Authorization\Voter\RoleHierarchyVoter"
attribute ROLE_NILEAD_DEFAULT_ADMIN ACCESS GRANTED
"Nilead\ResourceBundle\Security\Voter\LockableVoter"
attribute ROLE_NILEAD_DEFAULT_ADMIN ACCESS ABSTAIN
"Nilead\CartBundle\Security\Authorization\CartVoter"
attribute ROLE_NILEAD_DEFAULT_ADMIN ACCESS ABSTAIN
"Nilead\CartBundle\Security\Authorization\WishListVoter"
attribute ROLE_NILEAD_DEFAULT_ADMIN ACCESS ABSTAIN
"Nilead\CommentBundle\Security\Voter\CommentVoter"
attribute ROLE_NILEAD_DEFAULT_ADMIN ACCESS ABSTAIN
"Nilead\CommentBundle\Security\Voter\NoteVoter"
attribute ROLE_NILEAD_DEFAULT_ADMIN ACCESS ABSTAIN
"Nilead\PartyBundle\Security\Voter\StaffVoter"
attribute ROLE_NILEAD_DEFAULT_ADMIN ACCESS ABSTAIN
"Nilead\PartyBundle\Security\Voter\CustomerVoter"
attribute ROLE_NILEAD_DEFAULT_ADMIN ACCESS ABSTAIN
"Nilead\PartyBundle\Security\Voter\PartyNotificationVoter"
attribute ROLE_NILEAD_DEFAULT_ADMIN ACCESS ABSTAIN
"Nilead\PartyBundle\Security\Voter\PartyConversationVoter"
attribute ROLE_NILEAD_DEFAULT_ADMIN ACCESS ABSTAIN
"Nilead\PartyBundle\Security\Voter\PartyInboxVoter"
attribute ROLE_NILEAD_DEFAULT_ADMIN ACCESS ABSTAIN
"Nilead\ProductBundle\Security\Authorization\WidgetProductVoter"
attribute ROLE_NILEAD_DEFAULT_ADMIN ACCESS ABSTAIN
"Nilead\ProjectBundle\Security\Voter\MilestoneVoter"
attribute ROLE_NILEAD_DEFAULT_ADMIN ACCESS ABSTAIN
"Nilead\ProjectBundle\Security\Voter\PlanTaskVoter"
attribute ROLE_NILEAD_DEFAULT_ADMIN ACCESS ABSTAIN
"Nilead\SalesBundle\Security\Authorization\OrderVoter"
attribute ROLE_NILEAD_DEFAULT_ADMIN ACCESS ABSTAIN
"Nilead\SalesBundle\Security\Authorization\SubscriptionVoter"
attribute ROLE_NILEAD_DEFAULT_ADMIN ACCESS ABSTAIN
"Nilead\SecurityBundle\Authorization\Voter\PermissionVoter"
attribute ROLE_NILEAD_DEFAULT_ADMIN ACCESS ABSTAIN
"Nilead\ThemeBundle\Security\Voter\PageVoter"
attribute ROLE_NILEAD_DEFAULT_ADMIN ACCESS ABSTAIN
"Nilead\TicketBundle\Security\Voter\TicketVoter"
attribute ROLE_NILEAD_DEFAULT_ADMIN ACCESS ABSTAIN
"Nilead\SearchBundle\Security\Voter\SearchSaveVoter"
attribute ROLE_NILEAD_DEFAULT_ADMIN ACCESS ABSTAIN
Show voter details
2 GRANTED IS_AUTHENTICATED_REMEMBERED
null
"Symfony\Component\Security\Core\Authorization\Voter\AuthenticatedVoter"
attribute IS_AUTHENTICATED_REMEMBERED ACCESS GRANTED
"Nilead\ResourceBundle\Security\Voter\LockableVoter"
attribute IS_AUTHENTICATED_REMEMBERED ACCESS ABSTAIN
"Nilead\CartBundle\Security\Authorization\CartVoter"
attribute IS_AUTHENTICATED_REMEMBERED ACCESS ABSTAIN
"Nilead\CartBundle\Security\Authorization\WishListVoter"
attribute IS_AUTHENTICATED_REMEMBERED ACCESS ABSTAIN
"Nilead\CommentBundle\Security\Voter\CommentVoter"
attribute IS_AUTHENTICATED_REMEMBERED ACCESS ABSTAIN
"Nilead\CommentBundle\Security\Voter\NoteVoter"
attribute IS_AUTHENTICATED_REMEMBERED ACCESS ABSTAIN
"Nilead\PartyBundle\Security\Voter\StaffVoter"
attribute IS_AUTHENTICATED_REMEMBERED ACCESS ABSTAIN
"Nilead\PartyBundle\Security\Voter\CustomerVoter"
attribute IS_AUTHENTICATED_REMEMBERED ACCESS ABSTAIN
"Nilead\PartyBundle\Security\Voter\PartyNotificationVoter"
attribute IS_AUTHENTICATED_REMEMBERED ACCESS ABSTAIN
"Nilead\PartyBundle\Security\Voter\PartyConversationVoter"
attribute IS_AUTHENTICATED_REMEMBERED ACCESS ABSTAIN
"Nilead\PartyBundle\Security\Voter\PartyInboxVoter"
attribute IS_AUTHENTICATED_REMEMBERED ACCESS ABSTAIN
"Nilead\ProductBundle\Security\Authorization\WidgetProductVoter"
attribute IS_AUTHENTICATED_REMEMBERED ACCESS ABSTAIN
"Nilead\ProjectBundle\Security\Voter\MilestoneVoter"
attribute IS_AUTHENTICATED_REMEMBERED ACCESS ABSTAIN
"Nilead\ProjectBundle\Security\Voter\PlanTaskVoter"
attribute IS_AUTHENTICATED_REMEMBERED ACCESS ABSTAIN
"Nilead\SalesBundle\Security\Authorization\OrderVoter"
attribute IS_AUTHENTICATED_REMEMBERED ACCESS ABSTAIN
"Nilead\SalesBundle\Security\Authorization\SubscriptionVoter"
attribute IS_AUTHENTICATED_REMEMBERED ACCESS ABSTAIN
"Nilead\SecurityBundle\Authorization\Voter\PermissionVoter"
attribute IS_AUTHENTICATED_REMEMBERED ACCESS ABSTAIN
"Nilead\ThemeBundle\Security\Voter\PageVoter"
attribute IS_AUTHENTICATED_REMEMBERED ACCESS ABSTAIN
"Nilead\TicketBundle\Security\Voter\TicketVoter"
attribute IS_AUTHENTICATED_REMEMBERED ACCESS ABSTAIN
"Nilead\SearchBundle\Security\Voter\SearchSaveVoter"
attribute IS_AUTHENTICATED_REMEMBERED ACCESS ABSTAIN
Show voter details
3 GRANTED update
Nilead\BlockBundle\Model\Widget {#10130
  #extraOptions: [
    "providers"
    "mapping"
    "configs"
  ]
  #name: "linkon"
  +providerType: ""
  +providerOptions: []
  +providerConfigs: []
  -alias: null
  -_oldAlias: null
  -styles: [
    "class" => "font-400"
    "styles" => [
      "default" => [
        "default" => [
          "fontSize" => "text-base"
        ]
      ]
    ]
  ]
  -providers: []
  -mapping: []
  -configs: [
    "id" => null
    "attributes" => []
    "themeColor" => null
    "customCss" => """
      img {\n
        transform: translate3d(0px, 0px, 0px) scale3d(1, 1, 1) rotateX(0deg) rotateY(0deg) rotateZ(0deg) skew(0deg, 0deg);\n
        transform-style: preserve-3d;\n
        will-change: transform;\n
      }\n
      \n
      h1, h2, h3, h4, h5, h6 { \n
        display: block;\n
        margin-start: 0;\n
        margin-end: 0;\n
        margin-left: 0;\n
        margin-right: 0; \n
      }\n
      \n
      h1 {\n
        font-size: 2em;\n
        margin-top: 0.67em;\n
        margin-bottom: 0.67em;\n
      }\n
      h2 {\n
        font-size: 1.5em;\n
        margin-top: 0.83em;\n
        margin-bottom: 0.83em;\n
      }\n
      h3 {\n
        font-size: 1.17em;\n
        margin-top: 1em;\n
        margin-bottom: 1em;\n
      }\n
      h4 {\n
        font-size: 1em;\n
        margin-top: 1.33em;\n
        margin-bottom: 1.33em;\n
      }\n
      h5 {\n
        font-size: .83em;\n
        margin-top: 1.67em;\n
        margin-bottom: 1.67em;\n
      }\n
      h6 {\n
        font-size: .67em;\n
        margin-top: 2.33em;\n
        margin-bottom: 2.33em;\n
      }\n
      \n
      /*animate slide caption, title, buttons*/\n
      .nl-widget-element-slider.is-initialized {\n
        opacity: 1;\n
      }\n
      .nl-widget-element-slider-slide .nl-slide-content > .caption,\n
      .nl-widget-element-slider-slide .nl-slide-content > *:nth-child(1) {\n
        -webkit-text-stroke-width: 1px;\n
        -webkit-text-stroke-color: rgba(255,255,255,0.5);\n
        color: transparent;\n
      }\n
      .nl-widget-element-slider-slide:not(.is-active) * {\n
        transition-delay: 0ms;\n
        /*-webkit-transition: all 0.6s cubic-bezier(0.77,0,0.175,1) 0.8s;*/\n
        /*  -moz-transition: all 0.6s cubic-bezier(0.77, 0, 0.175, 1) 0.8s;*/\n
        /*  -ms-transition: all 0.6s cubic-bezier(0.77, 0, 0.175, 1) 0.8s;*/\n
        /*  -o-transition: all 0.6s cubic-bezier(0.77, 0, 0.175, 1) 0.8s;*/\n
        /*  transition: all 0.6s cubic-bezier(0.77,0,0.175,1) 0.8s;*/\n
      }\n
      .nl-widget-element-slider-slide.is-active * {\n
        --tw-translate-y: 0;\n
        --tw-translate-x: 0;\n
        opacity: 1;\n
      }\n
      .nl-widget-element-slider[data-nav="horizontal"] .nl-widget-element-slider-nav > div.is-active {\n
        width: 72px;\n
      }\n
      .nl-widget-element-slider[data-nav="horizontal"] .nl-widget-element-slider-nav > div.is-active > div {\n
        width: 100%;\n
        transition-duration: var(--time);\n
      }\n
      \n
      \n
      @media (min-width: 1024px) {\n
        .nl-grid-menus {\n
          display: block;\n
         column-count: 2;\n
         column-gap: 12rem;\n
        }\n
        .nl-grid-menus > * {\n
          break-inside: avoid;\n
        }\n
        .nl-grid-menus > *:first-child {\n
          margin-top: -2rem;\n
        }\n
      }\n
      \n
      /*blog item*/\n
      .truncate-3-lines {\n
          height: 3.5rem;\n
          -webkit-line-clamp: 3;\n
          overflow: hidden;\n
          -o-text-overflow: ellipsis;\n
          text-overflow: ellipsis;\n
          display: -webkit-box !important;\n
          -webkit-box-orient: vertical;\n
      }\n
      @media screen and (min-width: 1280px) {\n
          .truncate-3-lines {\n
              height: 3.8rem;\n
          }\n
      }\n
      \n
      /* NILEAD link styles */\n
      /*--------------------*/\n
      .nilead-link a {\n
      \toutline: none;\n
        text-decoration: none;\n
        position: relative;\n
        line-height: 1;\n
        color: #742014;\n
        display: inline-block;\n
        overflow: hidden;\n
        padding: 4px 2px;\n
        font-weight: 600;\n
        margin: 0px 0 -6px 0;\n
      }\n
      /*.nilead-link:hover {*/\n
      /*  font-weight: 400;*/\n
      /*}*/\n
      ::root {\n
      --nl-bg: #101941;\n
      }\n
      \n
      .nilead-link a::after {\n
      \tcontent: '';\n
        position: absolute;\n
        height: 100%;\n
        width: 100%;\n
        top: 0;\n
        right: -1px;\n
        z-index: 0;\n
        background: var(--nl-bg);\n
        -webkit-transform: translate3d(101%, 0, 0);\n
        transform: translate3d(101%, 0, 0);\n
        -webkit-transition: -webkit-transform 0.5s;\n
        transition: transform 0.5s;\n
        -webkit-transition-timing-function: cubic-bezier(0.7,0,0.3,1);\n
        transition-timing-function: cubic-bezier(0.7,0,0.3,1);\n
      }\n
      .nilead-link a:hover::after {\n
      \t-webkit-transform: translate3d(0,0,0);\n
      \ttransform: translate3d(0,0,0);\n
      }\n
      .nilead-link u {\n
        display: block;\n
        position: relative;\n
        z-index: 1;\n
        text-decoration: none;\n
      }\n
      .nilead-link a u::before {\n
      \tcontent: 'Nilead';\n
        position: absolute;\n
        color: #FFFFFF;\n
        left: 0;\n
        overflow: hidden;\n
        white-space: nowrap;\n
        width: 0%;\n
        -webkit-transition: width 0.5s;\n
        transition: width 0.5s;\n
        -webkit-transition-timing-function: cubic-bezier(0.7,0,0.3,1);\n
        transition-timing-function: cubic-bezier(0.7,0,0.3,1);\n
      }\n
      .nilead-link a:hover u::before {\n
      \twidth: 100%;\n
      }\n
      \n
      /*menu*/\n
      .nl-language span:first-child {\n
        -webkit-box-shadow: inset 0 0 0 2px currentColor;\n
        box-shadow: inset 0px 0 0px 2px currentColor;\n
        border-color: currentColor;\n
        transition: all 300ms ease-in-out;\n
      }\n
      .nl-language:not(.current):not(:hover) span:first-child {\n
        -webkit-box-shadow: none;\n
        box-shadow: none;\n
        opacity: .5;\n
      }\n
      .nl-language::before {\n
        display: none;\n
      }\n
      .nl-backdrop-menu {\n
        opacity: 0;\n
        pointer-events: none;\n
        -webkit-transition: opacity .3s ease-in-out;\n
        -o-transition: opacity .3s ease-in-out;\n
        transition: opacity .3s ease-in-out;\n
      }\n
      \n
      /*.nl-header {*/\n
        /*min-height: var(--h-header);*/\n
      /*}*/\n
      .nl-header-inner {\n
        -webkit-animation: menu-slide-up .8s .1s cubic-bezier(.25,.46,.45,.94) both;\n
        animation: menu-slide-up .8s .1s cubic-bezier(.25,.46,.45,.94) both;\n
      }\n
      .nl-header.header-fixed .nl-header-inner {\n
        position: fixed;\n
        /*background-color: #fff;*/\n
        -webkit-box-shadow: 0 2px 4px 0 rgba(0,0,0,.1);\n
        box-shadow: 0 2px 4px 0 rgba(0,0,0,.1);\n
        z-index: 1030;\n
        -webkit-animation: menu-slide-down .5s cubic-bezier(.25,.46,.45,.94) both;\n
        animation: menu-slide-down .5s cubic-bezier(.25,.46,.45,.94) both;\n
        -webkit-transition: background-color .2s ease-in-out;\n
        -o-transition: background-color .2s ease-in-out;\n
        transition: background-color .2s ease-in-out\n
      }\n
      /*.nl-header.header-fixed .nl-logo {*/\n
      /*  padding: .75rem 0;*/\n
      /*  margin: 0;*/\n
      /*}*/\n
      .nl-header.header-fixed .nl-logo .inactive { \n
        opacity: 1;\n
      }\n
      .nl-header.header-fixed .nl-logo .active { \n
        /*opacity: 0;*/\n
        height: 60px;\n
      }\n
        .nl-header a, \n
        .nl-header .nl-main-menu .nl-widget-element-dropdown-toggle {\n
            /*color: inherit;*/\n
            font-weight: 600;\n
            /*text-transform: uppercase;*/\n
            position: relative;\n
            text-decoration: none;\n
            line-height: 2;\n
        }\n
      @media (min-width: 1280px) {\n
        .nl-header a.nl-effect-hover::before,\n
        .nl-header .nl-main-menu a::before, \n
        .nl-header .nl-main-menu .nl-widget-element-dropdown-toggle::before {\n
            content: '';\n
            position: absolute;\n
            bottom: .25rem;\n
            width: 0;\n
            transition: all 300ms ease;\n
            border-bottom: 2px solid;\n
            left: 50%;\n
            transform: translateX(-50%);\n
        }\n
        .nl-header a.nl-effect-hover:hover::before, \n
        .nl-header .nl-main-menu a:hover::before, \n
        .nl-header .nl-main-menu .nl-widget-element-dropdown-toggle:hover::before {\n
            width: calc(100% - 2rem);\n
        }\n
        .nl-header .nl-main-menu .nl-widget-element-dropdown-toggle.nl-toggle-lang:hover::before {\n
          width: 100%;\n
        }\n
      \n
        .nl-widget-element-dropdown > .nl-widget-element-dropdown-list.nl-sub-menu,\n
        .nl-widget-element-dropdown > .nl-widget-element-dropdown-list.nl-main-menu {\n
          display: block !important;\n
        }\n
        .nl-widget-element-dropdown > .nl-widget-element-dropdown-list.nl-sub-menu {\n
          z-index: -1;\n
          pointer-events: none;\n
          -webkit-box-shadow: 0 2px 4px -2px rgb(0 0 0 / 10%);\n
          box-shadow: 0 2px 4px -2px rgb(0 0 0 / 10%);\n
          opacity: 0;\n
          -webkit-transition: opacity .3s ease-in-out;\n
          -o-transition: opacity .3s ease-in-out;\n
          transition: opacity .3s ease-in-out\n
        }\n
        .nl-header.header-fixed .nl-widget-element-dropdown-list.nl-sub-menu { \n
          padding-top: 1.25rem;\n
        }\n
        .nl-main-menu .nl-widget-element-dropdown-toggle::after {\n
          display: inline-block;\n
          margin-left: 0.255em;\n
          content: "";\n
          border-top: 4px solid;\n
          border-right: 4px solid transparent;\n
          border-left: 4px solid transparent;\n
          background-color: transparent;\n
          vertical-align: 2px;\n
        }\n
        .nl-widget-element-dropdown:hover > .nl-widget-element-dropdown-list.nl-sub-menu {\n
          z-index: 1030;\n
          pointer-events: auto;\n
          opacity: 1;\n
        }\n
        .nl-main-menu .nl-widget-element-link,\n
        .nl-main-menu .nl-widget-element-dropdown-toggle {\n
          position: relative;\n
        }\n
        .nl-product-filter {\n
          display: block !important;\n
        }\n
      }\n
      \n
      @media (min-width: 1921px) { \n
        .nl-header .nl-header-right {\n
          padding-right: 16.666667%;\n
        }\n
      }\n
      \n
      @media (max-width: 1279px) {\n
        .open-main-menu {\n
          overflow: hidden;  \n
        }\n
        \n
        .nl-header .nl-main-menu,\n
        .nl-header .nl-sub-menu {\n
          position: fixed;\n
          display: block !important;\n
          top: 0;\n
          left: -100%;\n
          z-index: 1030;\n
          width: 89%;\n
          height: 100%;\n
          height: -webkit-calc(var(--vh,1vh) * 100);\n
          height: calc(var(--vh,1vh) * 100);\n
          margin-top: 0;\n
          -webkit-box-shadow: 4px 3px 8px rgb(0 0 0 / 16%);\n
          box-shadow: 4px 3px 8px rgb(0 0 0 / 16%);\n
          opacity: 1;\n
          -webkit-transition: background-color .3s ease-in-out,left .3s ease-in-out;\n
          -o-transition: background-color .3s ease-in-out,left .3s ease-in-out;\n
          transition: background-color .3s ease-in-out,left .3s ease-in-out;\n
        }\n
        .nl-header .nl-main-menu.dropdown-active,\n
        .nl-header .nl-main-menu.dropdown-active .nl-sub-menu.dropdown-active {\n
          left: 0;\n
          background-color: #fff;\n
        }\n
        .nl-main-menu.dropdown-active + .nl-backdrop-menu {\n
          pointer-events: auto;\n
          opacity: 1;\n
          z-index: 1029;\n
        }\n
        .nl-main-menu .nl-widget-element-dropdown-toggle::after {\n
          content: "";\n
          background-image: url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns:xlink='http://www.w3.org/1999/xlink' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 50 100'%3e%3cpath transform='rotate(-90 25 50)' d='m25,75l50,-40l-10,-10l-40,30l-40,-30l-10,10l50,40z' fill='%23742014'/%3e%3c/svg%3e");\n
          background-size: 6px 12px;\n
          background-repeat: no-repeat;\n
          display: inline-block;\n
          width: 6px;\n
          height: 12px;\n
        }\n
        .nl-sub-menu h4::before {\n
          content:"";\n
          margin-right: 1rem;\n
          width: 16px;\n
          height: 16px;\n
          background-repeat: no-repeat;\n
          background-position: center;\n
          background-image: url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns:xlink='http://www.w3.org/1999/xlink' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 51.2 32'%3e%3cpath d='m51.2,14l-43.846,0l10.732,-11.18l-2.726,-2.82l-15.36,16l15.36,16l2.707,-2.82l-10.713,-11.18l43.846,0l0,-4z' fill='%23742014'/%3e%3c/svg%3e");\n
        }\n
      }\n
      /*menu*/\n
      \n
      /*grid masonry*/\n
      .grid-wrapper > div {\n
      \tdisplay: flex;\n
      \tjustify-content: center;\n
      \talign-items: center;\n
      }\n
      .grid-wrapper img {\n
      \twidth: 100%;\n
      \theight: 100%;\n
      \tobject-fit: cover;\n
      \tborder-radius: 5px;\n
      }\n
      \n
      .grid-wrapper {\n
      \tdisplay: grid;\n
      \tgrid-gap: 1rem;\n
      \tgrid-template-columns: repeat(auto-fit, minmax(1fr, 1fr));\n
      \tgrid-auto-flow: dense;\n
      }\n
      @media (min-width: 640px) {\n
      .grid-wrapper {\n
      \tdisplay: grid;\n
      \tgrid-template-columns: repeat(auto-fit, minmax(250px, 1fr));\n
      \tgrid-auto-rows: 200px;\n
      }\n
      .grid-wrapper .wide {\n
      \tgrid-column: span 2;\n
      }\n
      .grid-wrapper .tall {\n
      \tgrid-row: span 2;\n
      }\n
      .grid-wrapper .big {\n
      \tgrid-column: span 2;\n
      \tgrid-row: span 2;\n
      }\n
      }
      """
    "customJs" => """
      //scroll detector for changing the styles of the header\r\n
      // taken from: https://css-tricks.com/styling-based-on-scroll-position/\r\n
      //---------------------------------------------------------------------\r\n
      \r\n
      var header = nu.querySelector('.nl-header');\r\n
      var headerInner = nu.querySelector('.nl-header-inner', header);\r\n
      var headerBottom = nu.querySelector('.nl-header-bottom');\r\n
      if ( null !== header && null !== headerBottom &&\r\n
              "IntersectionObserver" in window &&\r\n
              "IntersectionObserverEntry" in window &&\r\n
              "intersectionRatio" in window.IntersectionObserverEntry.prototype\r\n
      ) {\r\n
        // document.documentElement.style.setProperty('--h-header', headerInner.offsetHeight + 'px');\r\n
      \r\n
        let observer = new IntersectionObserver(entries => {\r\n
          if (entries[0].boundingClientRect.y < 0) {\r\n
            header.classList.add("header-fixed");\r\n
          } else {\r\n
            header.classList.remove("header-fixed");\r\n
          }\r\n
        });\r\n
        observer.observe(headerBottom);\r\n
        // window.addEventListener('resize', function(event) {\r\n
        //   setTimeout(function(){\r\n
        //     document.documentElement.style.setProperty('--h-header', headerInner.offsetHeight + 'px');\r\n
        //   }, 50);\r\n
        // }, true);\r\n
      }\r\n
      \r\n
      // trigger animte class vertical, horizontal\r\n
      nu.forEach(nu.querySelectorAll('.nl-widget-element-slider'), function (slider) {\r\n
        nu.addEventListener(slider, 'sliderReady', function () {\r\n
          var splide = nu.getData(slider, 'nuSlider');\r\n
          var nav = slider.hasAttribute('data-nav');\r\n
          if (splide && nav) {\r\n
            splide.options.rewind = true;\r\n
            slider.style.setProperty('--time', splide.options.interval + 'ms');\r\n
          }\r\n
        })\r\n
      });
      """
  ]
  -options: []
  -interactions: []
  -conditions: []
  -referenceRoles: null
  -status: 0
  -enabled: true
  -aboveFold: false
  -position: 13685
  -widgetType: Proxies\__CG__\Nilead\BlockBundle\Model\WidgetType {#10221 …}
  -layoutSource: null
  -source: null
  -isSource: false
  -isShortcut: false
  -root: null
  -parent: null
  -style: Proxies\__CG__\Nilead\BlockBundle\Model\Style {#10141 …}
  -children: Doctrine\ORM\PersistentCollection {#10144 …}
  -snapshots: Doctrine\ORM\PersistentCollection {#10145 …}
  -meta: []
  #id: 525599
  #oldId: null
  #locker: null
  #lockExpired: null
  #skipLockVoter: false
  #created: 1746421419
  #updated: 1746525335
  #deleted: null
}
"Nilead\ResourceBundle\Security\Voter\LockableVoter"
attribute update ACCESS ABSTAIN
"Nilead\CartBundle\Security\Authorization\CartVoter"
attribute update ACCESS ABSTAIN
"Nilead\CartBundle\Security\Authorization\WishListVoter"
attribute update ACCESS ABSTAIN
"Nilead\CommentBundle\Security\Voter\CommentVoter"
attribute update ACCESS ABSTAIN
"Nilead\CommentBundle\Security\Voter\NoteVoter"
attribute update ACCESS ABSTAIN
"Nilead\PartyBundle\Security\Voter\StaffVoter"
attribute update ACCESS ABSTAIN
"Nilead\PartyBundle\Security\Voter\CustomerVoter"
attribute update ACCESS ABSTAIN
"Nilead\PartyBundle\Security\Voter\PartyNotificationVoter"
attribute update ACCESS ABSTAIN
"Nilead\PartyBundle\Security\Voter\PartyConversationVoter"
attribute update ACCESS ABSTAIN
"Nilead\PartyBundle\Security\Voter\PartyInboxVoter"
attribute update ACCESS ABSTAIN
"Nilead\ProductBundle\Security\Authorization\WidgetProductVoter"
attribute update ACCESS ABSTAIN
"Nilead\ProjectBundle\Security\Voter\MilestoneVoter"
attribute update ACCESS ABSTAIN
"Nilead\ProjectBundle\Security\Voter\PlanTaskVoter"
attribute update ACCESS ABSTAIN
"Nilead\SalesBundle\Security\Authorization\OrderVoter"
attribute update ACCESS ABSTAIN
"Nilead\SalesBundle\Security\Authorization\SubscriptionVoter"
attribute update ACCESS ABSTAIN
"Nilead\SecurityBundle\Authorization\Voter\PermissionVoter"
attribute update ACCESS GRANTED
"Nilead\ThemeBundle\Security\Voter\PageVoter"
attribute update ACCESS ABSTAIN
"Nilead\TicketBundle\Security\Voter\TicketVoter"
attribute update ACCESS ABSTAIN
"Nilead\SearchBundle\Security\Voter\SearchSaveVoter"
attribute update ACCESS ABSTAIN
Show voter details