403Webshell
Server IP : 66.29.153.156  /  Your IP : 216.73.216.151
Web Server : LiteSpeed
System : Linux premium322.web-hosting.com 4.18.0-553.50.1.lve.el8.x86_64 #1 SMP Thu Apr 17 19:10:24 UTC 2025 x86_64
User : lastyfjz ( 1521)
PHP Version : 8.1.34
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : ON  |  Sudo : OFF  |  Pkexec : OFF
Directory :  /home/lastyfjz/dermalaserclinic.co.uk/wp-content/plugins/boxzilla/assets/js/src/admin/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /home/lastyfjz/dermalaserclinic.co.uk/wp-content/plugins/boxzilla/assets/js/src/admin/_admin.js
const $ = window.jQuery
const Option = require('./_option.js')
const optionControls = document.getElementById('boxzilla-box-options-controls')
const $optionControls = $(optionControls)
const tnLoggedIn = document.createTextNode(' logged in')
const EventEmitter = require('wolfy87-eventemitter')
const events = new EventEmitter()
const Designer = require('./_designer.js')($, Option, events)
const rowTemplate = window.wp.template('rule-row-template')
const i18n = window.boxzilla_i18n
const ruleComparisonEl = document.getElementById('boxzilla-rule-comparison')
const rulesContainerEl = document.getElementById('boxzilla-box-rules')
const ajaxurl = window.ajaxurl

// events
$(window).on('load', function () {
  if (typeof (window.tinyMCE) === 'undefined') {
    document.getElementById('notice-notinymce').style.display = ''
  }

  $optionControls.on('click', '.boxzilla-add-rule', addRuleFields)
  $optionControls.on('click', '.boxzilla-remove-rule', removeRule)
  $optionControls.on('change', '.boxzilla-rule-condition', setContextualHelpers)
  $optionControls.find('.boxzilla-auto-show-trigger').on('change', toggleTriggerOptions)
  $(ruleComparisonEl).change(toggleAndOrTexts)
  $('.boxzilla-rule-row').each(setContextualHelpers)
})

function toggleAndOrTexts () {
  var newText = ruleComparisonEl.value === 'any' ? i18n.or : i18n.and
  $('.boxzilla-andor').text(newText)
}

function toggleTriggerOptions () {
  $optionControls.find('.boxzilla-trigger-options').toggle(this.value !== '')
}

function removeRule () {
  var row = $(this).parents('tr')

  // delete andor row
  row.prev().remove()

  // delete rule row
  row.remove()
}

function setContextualHelpers () {
  var context = (this.tagName.toLowerCase() === 'tr') ? this : $(this).parents('tr').get(0)
  var condition = context.querySelector('.boxzilla-rule-condition').value
  var valueInput = context.querySelector('.boxzilla-rule-value')
  var qualifierInput = context.querySelector('.boxzilla-rule-qualifier')
  var betterInput = valueInput.cloneNode(true)
  var $betterInput = $(betterInput)

  // remove previously added helpers
  $(context.querySelectorAll('.boxzilla-helper')).remove()

  // prepare better input
  betterInput.removeAttribute('name')
  betterInput.className = betterInput.className + ' boxzilla-helper'
  valueInput.parentNode.insertBefore(betterInput, valueInput.nextSibling)
  $betterInput.change(function () {
    valueInput.value = this.value
  })

  betterInput.style.display = ''
  valueInput.style.display = 'none'
  qualifierInput.style.display = ''
  qualifierInput.querySelector('option[value="not_contains"]').style.display = 'none'
  qualifierInput.querySelector('option[value="contains"]').style.display = 'none'
  if (tnLoggedIn.parentNode) {
    tnLoggedIn.parentNode.removeChild(tnLoggedIn)
  }

  // change placeholder for textual help
  switch (condition) {
    default:
      betterInput.placeholder = i18n.enterCommaSeparatedValues
      break

    case '':
    case 'everywhere':
      qualifierInput.value = '1'
      valueInput.value = ''
      betterInput.style.display = 'none'
      qualifierInput.style.display = 'none'
      break

    case 'is_single':
    case 'is_post':
      betterInput.placeholder = i18n.enterCommaSeparatedPosts
      $betterInput.suggest(ajaxurl + '?action=boxzilla_autocomplete&type=post', {
        multiple: true,
        multipleSep: ','
      })
      break

    case 'is_page':
      betterInput.placeholder = i18n.enterCommaSeparatedPages
      $betterInput.suggest(ajaxurl + '?action=boxzilla_autocomplete&type=page', {
        multiple: true,
        multipleSep: ','
      })
      break

    case 'is_post_type':
      betterInput.placeholder = i18n.enterCommaSeparatedPostTypes
      $betterInput.suggest(ajaxurl + '?action=boxzilla_autocomplete&type=post_type', {
        multiple: true,
        multipleSep: ','
      })
      break

    case 'is_url':
      qualifierInput.querySelector('option[value="contains"]').style.display = ''
      qualifierInput.querySelector('option[value="not_contains"]').style.display = ''
      betterInput.placeholder = i18n.enterCommaSeparatedRelativeUrls
      break

    case 'is_post_in_category':
      $betterInput.suggest(ajaxurl + '?action=boxzilla_autocomplete&type=category', {
        multiple: true,
        multipleSep: ','
      })
      break

    case 'is_post_with_tag':
      $betterInput.suggest(ajaxurl + '?action=boxzilla_autocomplete&type=post_tag', {
        multiple: true,
        multipleSep: ','
      })
      break

    case 'is_user_logged_in':
      betterInput.style.display = 'none'
      valueInput.parentNode.insertBefore(tnLoggedIn, valueInput.nextSibling)
      break

    case 'is_referer':
      qualifierInput.querySelector('option[value="contains"]').style.display = ''
      qualifierInput.querySelector('option[value="not_contains"]').style.display = ''
      break
  }
}

function addRuleFields () {
  var data = {
    key: optionControls.querySelectorAll('.boxzilla-rule-row').length,
    andor: ruleComparisonEl.value === 'any' ? i18n.or : i18n.and
  }
  var html = rowTemplate(data)
  $(rulesContainerEl).append(html)
  return false
}

module.exports = {
  Designer: Designer,
  Option: Option,
  events: events
}

Youez - 2016 - github.com/yon3zu
LinuXploit