Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 5 additions & 5 deletions projects/plugins/crm/.phan/baseline.php
Original file line number Diff line number Diff line change
Expand Up @@ -11,12 +11,12 @@
// # Issue statistics:
// PhanUndeclaredVariable : 930+ occurrences
// PhanTypeArraySuspiciousNullable : 550+ occurrences
// PhanRedundantCondition : 400+ occurrences
// PhanRedundantCondition : 410+ occurrences
// PhanTypeMismatchReturn : 330+ occurrences
// PhanUnextractableAnnotationElementName : 200+ occurrences
// PhanTypeMismatchArgument : 160+ occurrences
// PhanPossiblyUndeclaredVariable : 150+ occurrences
// PhanPluginUnreachableCode : 140+ occurrences
// PhanTypeMismatchArgument : 140+ occurrences
// PhanTypePossiblyInvalidDimOffset : 120+ occurrences
// PhanTypeMismatchReturnProbablyReal : 110+ occurrences
// PhanSuspiciousValueComparison : 100+ occurrences
Expand Down Expand Up @@ -185,8 +185,8 @@
'includes/ZeroBSCRM.DAL3.php' => ['PhanAccessMethodPrivate', 'PhanCommentParamWithoutRealParam', 'PhanPluginDuplicateConditionalNullCoalescing', 'PhanPluginDuplicateExpressionAssignmentOperation', 'PhanPluginRedundantAssignment', 'PhanPluginUnreachableCode', 'PhanPossiblyUndeclaredVariable', 'PhanRedundantCondition', 'PhanSuspiciousValueComparison', 'PhanSuspiciousWeakTypeComparison', 'PhanSuspiciousWeakTypeComparisonInLoop', 'PhanTypeArraySuspiciousNull', 'PhanTypeArraySuspiciousNullable', 'PhanTypeComparisonFromArray', 'PhanTypeExpectedObjectPropAccess', 'PhanTypeMismatchArgument', 'PhanTypeMismatchArgumentInternal', 'PhanTypeMismatchArgumentInternalReal', 'PhanTypeMismatchArgumentProbablyReal', 'PhanTypeMismatchDefault', 'PhanTypeMismatchForeach', 'PhanTypeMismatchReturn', 'PhanTypeMismatchReturnProbablyReal', 'PhanTypePossiblyInvalidDimOffset', 'PhanUndeclaredMethod', 'PhanUndeclaredTypeParameter', 'PhanUndeclaredTypeReturnType', 'PhanUndeclaredVariable', 'PhanUnextractableAnnotationElementName', 'PhanUnextractableAnnotationSuffix'],
'includes/ZeroBSCRM.DataIOValidation.php' => ['PhanTypeMismatchArgument'],
'includes/ZeroBSCRM.Database.php' => ['PhanRedundantCondition', 'PhanSuspiciousValueComparison'],
'includes/ZeroBSCRM.Delete.php' => ['PhanTypeMismatchArgument', 'PhanTypeMismatchArgumentInternal'],
'includes/ZeroBSCRM.Edit.php' => ['PhanTypeArraySuspiciousNullable', 'PhanTypeMismatchArgument', 'PhanTypeMismatchArgumentInternal'],
'includes/ZeroBSCRM.Delete.php' => ['PhanTypeMismatchArgument'],
'includes/ZeroBSCRM.Edit.php' => ['PhanTypeArraySuspiciousNullable', 'PhanTypeMismatchArgument'],
'includes/ZeroBSCRM.Encryption.php' => ['PhanUndeclaredConstant'],
'includes/ZeroBSCRM.ExternalSources.php' => ['PhanPluginMixedKeyNoKey', 'PhanPluginUnreachableCode', 'PhanTypeArraySuspiciousNullable'],
'includes/ZeroBSCRM.FileUploads.php' => ['PhanTypeMismatchDimFetch'],
Expand Down Expand Up @@ -221,7 +221,7 @@
'includes/ZeroBSCRM.ScreenOptions.php' => ['PhanRedundantCondition', 'PhanSuspiciousValueComparison'],
'includes/ZeroBSCRM.SemanticUIHelpers.php' => ['PhanPluginUnreachableCode'],
'includes/ZeroBSCRM.Social.php' => ['PhanMisspelledAnnotation', 'PhanTypeArraySuspiciousNullable', 'PhanTypeSuspiciousStringExpression'],
'includes/ZeroBSCRM.TagManager.php' => ['PhanEmptyForeach', 'PhanRedundantCondition', 'PhanTypeMismatchArgument', 'PhanUndeclaredProperty'],
'includes/ZeroBSCRM.TagManager.php' => ['PhanEmptyForeach', 'PhanRedundantCondition', 'PhanUndeclaredProperty'],
'includes/class-encryption.php' => ['PhanTypeMismatchArgumentInternal'],
'includes/class-learn-menu.php' => ['PhanPluginDuplicateExpressionBinaryOp', 'PhanRedundantCondition', 'PhanTypeInvalidDimOffset', 'PhanTypeMismatchDefault'],
'includes/class-oauth-handler.php' => ['PhanTypeArraySuspicious', 'PhanTypeMismatchReturn', 'PhanTypeMismatchReturnProbablyReal', 'PhanTypePossiblyInvalidDimOffset', 'PhanUndeclaredClassCatch', 'PhanUndeclaredClassMethod', 'PhanUndeclaredTypeReturnType', 'PhanUndeclaredVariable'],
Expand Down
7 changes: 3 additions & 4 deletions projects/plugins/crm/admin/company/view.page.php
Original file line number Diff line number Diff line change
Expand Up @@ -939,14 +939,13 @@ function jpcrm_render_company_view_page( $id = -1 ) {
</div>

<script type="text/javascript">

// Nonce
var zbscrmjs_secToken = '<?php echo esc_js( wp_create_nonce( 'zbscrmjs-ajax-nonce' ) ); ?>';
var zbscrmjs_secToken = <?php echo wp_json_encode( wp_create_nonce( 'zbscrmjs-ajax-nonce' ), JSON_UNESCAPED_SLASHES | JSON_HEX_TAG | JSON_HEX_AMP ); ?>;

// moved to singleview.js
var zbsViewSettings = {
objid: <?php echo esc_html( $id ); ?>,
objdbname: 'company' <?php // echo $this->objType; ?>
objid: <?php echo (int) $id; ?>,
objdbname: 'company',
};

</script>
Expand Down
6 changes: 3 additions & 3 deletions projects/plugins/crm/admin/contact/view.page.php
Original file line number Diff line number Diff line change
Expand Up @@ -1365,14 +1365,14 @@ function jpcrm_render_contact_view_page( $id = -1 ) {
<script type="text/javascript">

// Nonce
var zbscrmjs_secToken = '<?php echo esc_js( wp_create_nonce( 'zbscrmjs-ajax-nonce' ) ); ?>';
var zbscrmjs_secToken = <?php echo wp_json_encode( wp_create_nonce( 'zbscrmjs-ajax-nonce' ), JSON_UNESCAPED_SLASHES | JSON_HEX_TAG | JSON_HEX_AMP ); ?>;

// moved to singleview.js
var zbsViewSettings = {

objid: <?php echo esc_html( $id ); ?>,
objid: <?php echo (int) $id; ?>,
objdbname: 'contact',
update_meta_nonce: '<?php echo esc_html( wp_create_nonce( 'jpcrm-update-meta-ajax' ) ); ?>'
update_meta_nonce: <?php echo wp_json_encode( wp_create_nonce( 'jpcrm-update-meta-ajax' ), JSON_UNESCAPED_SLASHES | JSON_HEX_TAG | JSON_HEX_AMP ); ?>

};

Expand Down
19 changes: 2 additions & 17 deletions projects/plugins/crm/admin/email/main.page.php
Original file line number Diff line number Diff line change
Expand Up @@ -349,25 +349,10 @@ function jpcrm_render_emailbox() {
// ALTHOUGH THIS WORKS
// (Loads a sent msg)
// It's not currently used, because send message func doesn't return ID, so just loading sent for now
var zbsMailBoxShowSentID =
<?php

$sentID = -1;

if ( isset( $_GET['sentID'] ) ) {

$sentID = (int) sanitize_text_field( $_GET['sentID'] );

}

if ( $sentID > 0 ) {
echo esc_html( $sentID );
} else {
echo -1;
}

$jpcrm_mailbox_sent_id = isset( $_GET['sentID'] ) ? (int) $_GET['sentID'] : -1; // phpcs:ignore WordPress.Security.NonceVerification.Recommended
?>
;
var zbsMailBoxShowSentID = <?php echo $jpcrm_mailbox_sent_id > 0 ? (int) $jpcrm_mailbox_sent_id : -1; ?>;

// WH put here to catch reload of page with 'sent' id
// ... not sure where rest of your JS sits can't find
Expand Down
59 changes: 28 additions & 31 deletions projects/plugins/crm/admin/settings/custom-fields.page.php
Original file line number Diff line number Diff line change
Expand Up @@ -461,44 +461,41 @@ function ( $field_name ) use ( $sort_field_names, $custom_type ) {

</form>

<?php
$jpcrm_settings_lang = array(
'customfield' => __( 'Custom Field', 'zero-bs-crm' ),
'remove' => __( 'Remove', 'zero-bs-crm' ),
'tel' => __( 'Telephone', 'zero-bs-crm' ),
'numbdec' => __( 'Numeric (Decimals)', 'zero-bs-crm' ),
'numb' => __( 'Numeric', 'zero-bs-crm' ),
'placeholder' => __( 'Placeholder', 'zero-bs-crm' ),
'csvopt' => __( "CSV of Options (e.g. 'a,b,c')", 'zero-bs-crm' ),
'fieldname' => __( 'Field Name', 'zero-bs-crm' ),
'fieldplacehold' => __( 'Field Placeholder Text', 'zero-bs-crm' ),
'fileboxname' => __( 'File Box Name', 'zero-bs-crm' ),
'password' => __( 'Password', 'zero-bs-crm' ),
'encryptedtext' => __( 'Encrypted Text', 'zero-bs-crm' ),
'radiobuttons' => __( 'Radio Buttons', 'zero-bs-crm' ),
'prefix' => __( 'Prefix', 'zero-bs-crm' ),
'nextnumber' => __( 'Next Number', 'zero-bs-crm' ),
'suffix' => __( 'Suffix', 'zero-bs-crm' ),
'prefixe' => __( '(e.g. ABC-)', 'zero-bs-crm' ),
'nextnumbere' => __( '(e.g. 1)', 'zero-bs-crm' ),
'suffixe' => __( '(e.g. -FINI)', 'zero-bs-crm' ),
'fieldtype' => __( 'Field Type:', 'zero-bs-crm' ),
'autonumberformat' => __( 'Autonumber Format', 'zero-bs-crm' ),
'autonumberguide' => __( 'Autonumber Guide', 'zero-bs-crm' ),
);
?>
<script type="text/javascript">

// all custom js moved to admin.settings.js 12/3/19 :)

var wpzbscrmCustomFields = <?php echo wp_json_encode( $current_custom_fields, JSON_UNESCAPED_SLASHES | JSON_HEX_TAG | JSON_HEX_AMP ); ?>;
var wpzbscrmAcceptableTypes = <?php echo wp_json_encode( $acceptableCFTypes, JSON_UNESCAPED_SLASHES | JSON_HEX_TAG | JSON_HEX_AMP ); ?>;
var wpzbscrm_settings_page = 'customfields'; // this fires init js in admin.settings.min.js
var wpzbscrm_settings_lang = {

customfield:'<?php zeroBSCRM_slashOut( __( 'Custom Field', 'zero-bs-crm' ) ); ?>',
remove: '<?php zeroBSCRM_slashOut( __( 'Remove', 'zero-bs-crm' ) ); ?>',
tel: '<?php zeroBSCRM_slashOut( __( 'Telephone', 'zero-bs-crm' ) ); ?>',
numbdec: '<?php zeroBSCRM_slashOut( __( 'Numeric (Decimals)', 'zero-bs-crm' ) ); ?>',
numb: '<?php zeroBSCRM_slashOut( __( 'Numeric', 'zero-bs-crm' ) ); ?>',
placeholder:'<?php zeroBSCRM_slashOut( __( 'Placeholder', 'zero-bs-crm' ) ); ?>',
csvopt: '<?php zeroBSCRM_slashOut( __( "CSV of Options (e.g. 'a,b,c')", 'zero-bs-crm' ) ); ?>',
fieldname: '<?php zeroBSCRM_slashOut( __( 'Field Name', 'zero-bs-crm' ) ); ?>',
fieldplacehold:'<?php zeroBSCRM_slashOut( __( 'Field Placeholder Text', 'zero-bs-crm' ) ); ?>',
fileboxname: '<?php zeroBSCRM_slashOut( __( 'File Box Name', 'zero-bs-crm' ) ); ?>',
password: '<?php zeroBSCRM_slashOut( __( 'Password', 'zero-bs-crm' ) ); ?>',
encryptedtext: '<?php zeroBSCRM_slashOut( __( 'Encrypted Text', 'zero-bs-crm' ) ); ?>',
radiobuttons: '<?php zeroBSCRM_slashOut( __( 'Radio Buttons', 'zero-bs-crm' ) ); ?>',
prefix: '<?php zeroBSCRM_slashOut( __( 'Prefix', 'zero-bs-crm' ) ); ?>',
nextnumber: '<?php zeroBSCRM_slashOut( __( 'Next Number', 'zero-bs-crm' ) ); ?>',
suffix: '<?php zeroBSCRM_slashOut( __( 'Suffix', 'zero-bs-crm' ) ); ?>',
prefixe: '<?php zeroBSCRM_slashOut( __( '(e.g. ABC-)', 'zero-bs-crm' ) ); ?>',
nextnumbere: '<?php zeroBSCRM_slashOut( __( '(e.g. 1)', 'zero-bs-crm' ) ); ?>',
suffixe: '<?php zeroBSCRM_slashOut( __( '(e.g. -FINI)', 'zero-bs-crm' ) ); ?>',
fieldtype: '<?php zeroBSCRM_slashOut( __( 'Field Type:', 'zero-bs-crm' ) ); ?>',
autonumberformat: '<?php zeroBSCRM_slashOut( __( 'Autonumber Format', 'zero-bs-crm' ) ); ?>',
autonumberguide: '<?php zeroBSCRM_slashOut( __( 'Autonumber Guide', 'zero-bs-crm' ) ); ?>',

};
var wpzbscrm_settings_urls = {

autonumberhelp: '<?php echo esc_html( $zbs->urls['autonumberhelp'] ); ?>'

};
var wpzbscrm_settings_lang = <?php echo wp_json_encode( $jpcrm_settings_lang, JSON_UNESCAPED_SLASHES | JSON_HEX_TAG | JSON_HEX_AMP ); ?>;
var wpzbscrm_settings_urls = <?php echo wp_json_encode( array( 'autonumberhelp' => $zbs->urls['autonumberhelp'] ), JSON_UNESCAPED_SLASHES | JSON_HEX_TAG | JSON_HEX_AMP ); ?>;

</script>

Expand Down
11 changes: 1 addition & 10 deletions projects/plugins/crm/admin/settings/field-sorts.page.php
Original file line number Diff line number Diff line change
Expand Up @@ -323,16 +323,7 @@
</form>

<script type="text/javascript">
var zbsSortableFieldTypes = [
<?php
$x = 1;
foreach ( $fieldTypes as $key => $fieldType ) {
if ( $x > 1 ) {
echo ',';
} echo "'" . esc_html( $key ) . "'";
++$x; }
?>
];
var zbsSortableFieldTypes = <?php echo wp_json_encode( array_keys( $fieldTypes ), JSON_UNESCAPED_SLASHES | JSON_HEX_TAG | JSON_HEX_AMP ); ?>;

jQuery(function(){

Expand Down
15 changes: 8 additions & 7 deletions projects/plugins/crm/admin/settings/tax.page.php
Original file line number Diff line number Diff line change
Expand Up @@ -217,16 +217,17 @@
</form>


<?php
$jpcrm_tax_table_lang = array(
'defaultTaxName' => __( 'Tax Rate Name', 'zero-bs-crm' ),
'defaultTaxPerc' => __( 'Tax Rate %', 'zero-bs-crm' ),
'percSymbol' => __( '%', 'zero-bs-crm' ),
);
?>
<script type="text/javascript">

var zeroBSCRMJS_taxTable = <?php echo wp_json_encode( $taxTables, JSON_UNESCAPED_SLASHES | JSON_HEX_TAG | JSON_HEX_AMP ); ?>;
var zeroBSCRMJS_taxTableLang = {

defaultTaxName: '<?php echo esc_html( zeroBSCRM_slashOut( __( 'Tax Rate Name', 'zero-bs-crm' ) ) ); ?>',
defaultTaxPerc: '<?php echo esc_html( zeroBSCRM_slashOut( __( 'Tax Rate %', 'zero-bs-crm' ) ) ); ?>',
percSymbol: '<?php echo esc_html( zeroBSCRM_slashOut( __( '%', 'zero-bs-crm' ) ) ); ?>',

};
var zeroBSCRMJS_taxTableLang = <?php echo wp_json_encode( $jpcrm_tax_table_lang, JSON_UNESCAPED_SLASHES | JSON_HEX_TAG | JSON_HEX_AMP ); ?>;

jQuery(function(){

Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
Significance: patch
Type: fixed

Use proper escaping functions on strings.
2 changes: 1 addition & 1 deletion projects/plugins/crm/includes/ZeroBSCRM.Core.Menus.Top.php
Original file line number Diff line number Diff line change
Expand Up @@ -158,7 +158,7 @@ function zeroBSCRM_admin_top_menu( $branding = 'zero-bs-crm', $page = 'dash' ) {

// } AJAX nonce, rest is dealt with in the admin global js :)
?>
<script type="text/javascript">var zbscrmjs_topMenuSecToken = '<?php echo esc_js( wp_create_nonce( 'zbscrmjs-ajax-nonce-topmenu' ) ); ?>';</script>
<script type="text/javascript">var zbscrmjs_topMenuSecToken = <?php echo wp_json_encode( wp_create_nonce( 'zbscrmjs-ajax-nonce-topmenu' ), JSON_UNESCAPED_SLASHES | JSON_HEX_TAG | JSON_HEX_AMP ); ?>;</script>
<?php

// } Menu hidden? - maybe we can cookie this? for now this is slick.
Expand Down
53 changes: 17 additions & 36 deletions projects/plugins/crm/includes/ZeroBSCRM.Delete.php
Original file line number Diff line number Diff line change
Expand Up @@ -483,7 +483,12 @@ public function drawView() {

<input type="hidden" name="zbs-delete-nonce" value="<?php echo esc_attr( wp_create_nonce( 'delete-nonce' ) ); ?>" />
</form></div>

<?php
$jpcrm_edit_view_lang_labels = array_merge(
array( 'today' => __( 'Today', 'zero-bs-crm' ) ),
is_array( $this->langLabels ) ? $this->langLabels : array(),
);
?>
<script type="text/javascript">

jQuery(function($){
Expand All @@ -493,42 +498,18 @@ public function drawView() {
// General options for edit page
var zbsDeleteSettings = {

objid: <?php echo esc_html( $this->objID ); ?>,
objdbname: '<?php echo esc_html( $this->objType ); ?>'
objid: <?php echo (int) $this->objID; ?>,
objdbname: <?php echo wp_json_encode( $this->objType, JSON_UNESCAPED_SLASHES | JSON_HEX_TAG | JSON_HEX_AMP ); ?>

};
var zbsObjectViewLinkPrefixCustomer = '<?php echo jpcrm_esc_link( 'view', -1, 'zerobs_customer', true ); ?>';
var zbsObjectEditLinkPrefixCustomer = '<?php echo jpcrm_esc_link( 'edit', -1, 'zerobs_customer', true ); ?>';
var zbsObjectViewLinkPrefixCompany = '<?php echo jpcrm_esc_link( 'view', -1, 'zerobs_company', true ); ?>';
var zbsListViewLink = '<?php echo jpcrm_esc_link( $this->listViewSlug ); ?>';
var zbsClick2CallType = parseInt('<?php echo esc_html( zeroBSCRM_getSetting( 'clicktocalltype' ) ); ?>');
var zbsEditViewLangLabels = {

'today': '<?php echo esc_html( zeroBSCRM_slashOut( __( 'Today', 'zero-bs-crm' ) ) ); ?>',

<?php
$labelCount = 0;
if ( count( $this->langLabels ) > 0 ) {
foreach ( $this->langLabels as $labelK => $labelV ) {

if ( $labelCount > 0 ) {
echo ',';
}

echo esc_html( $labelK ) . ":'" . esc_html( zeroBSCRM_slashOut( $labelV ) ) . "'";

++$labelCount;

}
}
?>

};
<?php
#} Nonce for AJAX
echo "var zbscrmjs_secToken = '" . esc_js( wp_create_nonce( 'zbscrmjs-ajax-nonce' ) ) . "';";
?>
</script>
<?php
var zbsObjectViewLinkPrefixCustomer = <?php echo wp_json_encode( jpcrm_esc_link( 'view', -1, 'zerobs_customer', true ), JSON_UNESCAPED_SLASHES | JSON_HEX_TAG | JSON_HEX_AMP ); ?>;
var zbsObjectEditLinkPrefixCustomer = <?php echo wp_json_encode( jpcrm_esc_link( 'edit', -1, 'zerobs_customer', true ), JSON_UNESCAPED_SLASHES | JSON_HEX_TAG | JSON_HEX_AMP ); ?>;
var zbsObjectViewLinkPrefixCompany = <?php echo wp_json_encode( jpcrm_esc_link( 'view', -1, 'zerobs_company', true ), JSON_UNESCAPED_SLASHES | JSON_HEX_TAG | JSON_HEX_AMP ); ?>;
var zbsListViewLink = <?php echo wp_json_encode( jpcrm_esc_link( $this->listViewSlug ), JSON_UNESCAPED_SLASHES | JSON_HEX_TAG | JSON_HEX_AMP ); ?>;
var zbsClick2CallType = <?php echo (int) zeroBSCRM_getSetting( 'clicktocalltype' ); ?>;
var zbsEditViewLangLabels = <?php echo wp_json_encode( $jpcrm_edit_view_lang_labels, JSON_UNESCAPED_SLASHES | JSON_HEX_TAG | JSON_HEX_AMP ); ?>;
var zbscrmjs_secToken = <?php echo wp_json_encode( wp_create_nonce( 'zbscrmjs-ajax-nonce' ), JSON_UNESCAPED_SLASHES | JSON_HEX_TAG | JSON_HEX_AMP ); ?>;
</script>
<?php
} // /draw func
} // class
48 changes: 22 additions & 26 deletions projects/plugins/crm/includes/ZeroBSCRM.Edit.Segment.php
Original file line number Diff line number Diff line change
Expand Up @@ -208,6 +208,27 @@ function ( $a, $b ) {
// phpcs:enable WordPress.WP.I18n.TextDomainMismatch
?>

<?php
$jpcrm_segment_lang = array(
'generalerrortitle' => __( 'General Error', 'zero-bs-crm' ),
'generalerror' => __( 'There was a general error.', 'zero-bs-crm' ),
'currentlyInSegment' => __( 'Contacts currently match these conditions.', 'zero-bs-crm' ),
'previewTitle' => __( 'Contacts Preview (randomised)', 'zero-bs-crm' ),
'noName' => __( 'Unnamed Contact', 'zero-bs-crm' ),
'noEmail' => __( 'No Email', 'zero-bs-crm' ),
'notags' => __( 'No Tags Found', 'zero-bs-crm' ),
'nostatuses' => __( 'No Statuses Found', 'zero-bs-crm' ),
'noextsources' => __( 'No External Sources Found', 'zero-bs-crm' ),
'no_mailpoet_statuses' => __( 'No MailPoet Statuses Found', 'zero-bs-crm' ),
'nosegmentid' => __( 'No Segment ID Found.', 'zero-bs-crm' ),
'to' => __( 'to', 'zero-bs-crm' ),
'eg' => __( 'e.g.', 'zero-bs-crm' ),
'saveSegment' => __( 'Save Segment', 'zero-bs-crm' ) . ' <i class="save icon">',
'savedSegment' => __( 'Segment Saved', 'zero-bs-crm' ) . ' <i class="check circle outline icon">',
'contactfields' => '=== ' . __( 'Contact Fields', 'zero-bs-crm' ) . ' ===',
'default_description' => __( 'Condition which selects contacts based on given value', 'zero-bs-crm' ),
);
?>
<script type="text/javascript">
var zbsSegment = <?php echo wp_json_encode( $segment, JSON_UNESCAPED_SLASHES | JSON_HEX_TAG | JSON_HEX_AMP ); ?>;
var jpcrm_available_conditions = <?php echo wp_json_encode( $available_conditions, JSON_UNESCAPED_SLASHES | JSON_HEX_TAG | JSON_HEX_AMP ); ?>;
Expand All @@ -220,32 +241,7 @@ function ( $a, $b ) {
var jpcrm_contact_stem_URL = <?php echo wp_json_encode( jpcrm_esc_link( 'view', -1, 'contact', true ), JSON_UNESCAPED_SLASHES | JSON_HEX_TAG | JSON_HEX_AMP ); ?>;
var zbsSegmentListURL = <?php echo wp_json_encode( jpcrm_esc_link( $zbs->slugs['segments'] ), JSON_UNESCAPED_SLASHES | JSON_HEX_TAG | JSON_HEX_AMP ); ?>;
var zbsSegmentSEC = <?php echo wp_json_encode( wp_create_nonce( 'zbs-ajax-nonce' ), JSON_UNESCAPED_SLASHES | JSON_HEX_TAG | JSON_HEX_AMP ); ?>;
var zbsSegmentLang = {
generalerrortitle: '<?php esc_html_e( 'General Error', 'zero-bs-crm' ); ?>',
generalerror: '<?php esc_html_e( 'There was a general error.', 'zero-bs-crm' ); ?>',

currentlyInSegment: '<?php esc_html_e( 'Contacts currently match these conditions.', 'zero-bs-crm' ); ?>',
previewTitle: '<?php esc_html_e( 'Contacts Preview (randomised)', 'zero-bs-crm' ); ?>',

noName: '<?php esc_html_e( 'Unnamed Contact', 'zero-bs-crm' ); ?>',
noEmail: '<?php esc_html_e( 'No Email', 'zero-bs-crm' ); ?>',

notags: '<?php esc_html_e( 'No Tags Found', 'zero-bs-crm' ); ?>',
nostatuses: '<?php esc_html_e( 'No Statuses Found', 'zero-bs-crm' ); ?>',
noextsources: '<?php esc_html_e( 'No External Sources Found', 'zero-bs-crm' ); ?>',
no_mailpoet_statuses: '<?php esc_html_e( 'No MailPoet Statuses Found', 'zero-bs-crm' ); ?>',
nosegmentid: '<?php esc_html_e( 'No Segment ID Found.', 'zero-bs-crm' ); ?>',

to: '<?php esc_html_e( 'to', 'zero-bs-crm' ); ?>',
eg: '<?php esc_html_e( 'e.g.', 'zero-bs-crm' ); ?>',

saveSegment: '<?php esc_html_e( 'Save Segment', 'zero-bs-crm' ); ?> <i class="save icon">',
savedSegment: '<?php esc_html_e( 'Segment Saved', 'zero-bs-crm' ); ?> <i class="check circle outline icon">',

contactfields: '=== <?php esc_html_e( 'Contact Fields', 'zero-bs-crm' ); ?> ===',

default_description: '<?php esc_html_e( 'Condition which selects contacts based on given value', 'zero-bs-crm' ); ?>',
};
var zbsSegmentLang = <?php echo wp_json_encode( $jpcrm_segment_lang, JSON_UNESCAPED_SLASHES | JSON_HEX_TAG | JSON_HEX_AMP ); ?>;
var jpcrm_external_source_list = <?php echo wp_json_encode( $external_source_array, JSON_UNESCAPED_SLASHES | JSON_HEX_TAG | JSON_HEX_AMP ); ?>;

<?php
Expand Down
Loading
Loading