Edit File by line

Deprecated: str_replace(): Passing null to parameter #2 ($replace) of type array|string is deprecated in /home/sportsfever/public_html/filemanger/function.php on line 93

Warning: Undefined array key "page_file_edit_line" in /home/sportsfever/public_html/filemanger/edit_text_line.php on line 32
/home/sportsfe.../httpdocs/wp-conte.../themes/Divi/includes/builder/module/helpers
File: MultiViewOptions.php
* Check wether self closing tag or not
[2000] Fix | Delete
*
[2001] Fix | Delete
* @since 3.27.1?
[2002] Fix | Delete
*
[2003] Fix | Delete
* @param string $tag Element tag.
[2004] Fix | Delete
*
[2005] Fix | Delete
* @return boolean
[2006] Fix | Delete
*/
[2007] Fix | Delete
protected function is_self_closing_tag( $tag ) {
[2008] Fix | Delete
$self_closing_tags = array(
[2009] Fix | Delete
'area',
[2010] Fix | Delete
'base',
[2011] Fix | Delete
'br',
[2012] Fix | Delete
'col',
[2013] Fix | Delete
'embed',
[2014] Fix | Delete
'hr',
[2015] Fix | Delete
'img',
[2016] Fix | Delete
'input',
[2017] Fix | Delete
'link',
[2018] Fix | Delete
'meta',
[2019] Fix | Delete
'param',
[2020] Fix | Delete
'source',
[2021] Fix | Delete
'track',
[2022] Fix | Delete
'wbr',
[2023] Fix | Delete
);
[2024] Fix | Delete
[2025] Fix | Delete
return in_array( $tag, $self_closing_tags, true );
[2026] Fix | Delete
}
[2027] Fix | Delete
[2028] Fix | Delete
/**
[2029] Fix | Delete
* Check if required props is fulfilled
[2030] Fix | Delete
*
[2031] Fix | Delete
* @since 3.27.1?
[2032] Fix | Delete
*
[2033] Fix | Delete
* @param string $contexts Element contexts data.
[2034] Fix | Delete
*
[2035] Fix | Delete
* @return bool
[2036] Fix | Delete
*/
[2037] Fix | Delete
protected function is_required_props_fulfilled( $contexts ) {
[2038] Fix | Delete
$required_some_keys = et_()->array_get( $contexts, 'required_some', false );
[2039] Fix | Delete
[2040] Fix | Delete
if ( $required_some_keys ) {
[2041] Fix | Delete
if ( ! is_array( $required_some_keys ) ) {
[2042] Fix | Delete
$required_some_keys = explode( ',', $required_some_keys );
[2043] Fix | Delete
}
[2044] Fix | Delete
[2045] Fix | Delete
$fulfilled = false;
[2046] Fix | Delete
[2047] Fix | Delete
foreach ( $required_some_keys as $required_key => $required_value_compare ) {
[2048] Fix | Delete
// Handle zero indexed data.
[2049] Fix | Delete
if ( is_numeric( $required_key ) ) {
[2050] Fix | Delete
$fulfilled = $this->has_value( $required_value_compare );
[2051] Fix | Delete
} else {
[2052] Fix | Delete
$fulfilled = $this->has_value( $required_key, $required_value_compare );
[2053] Fix | Delete
}
[2054] Fix | Delete
[2055] Fix | Delete
// Break the loop once any of required props key is fulfilled.
[2056] Fix | Delete
if ( $fulfilled ) {
[2057] Fix | Delete
break;
[2058] Fix | Delete
}
[2059] Fix | Delete
}
[2060] Fix | Delete
[2061] Fix | Delete
// Bail early if required_some param is defined, no need to process further.
[2062] Fix | Delete
// The required_some param is prioritized over required param.
[2063] Fix | Delete
return $fulfilled;
[2064] Fix | Delete
}
[2065] Fix | Delete
[2066] Fix | Delete
$required_keys = et_()->array_get( $contexts, 'required', array() );
[2067] Fix | Delete
[2068] Fix | Delete
// Bail early when the required parameter defined as false.
[2069] Fix | Delete
if ( false === $required_keys ) {
[2070] Fix | Delete
return true;
[2071] Fix | Delete
}
[2072] Fix | Delete
[2073] Fix | Delete
if ( $required_keys && ! is_array( $required_keys ) ) {
[2074] Fix | Delete
$required_keys = explode( ',', $required_keys );
[2075] Fix | Delete
}
[2076] Fix | Delete
[2077] Fix | Delete
// Populate the required keys from the content if it is empty.
[2078] Fix | Delete
if ( ! $required_keys ) {
[2079] Fix | Delete
$content = et_()->array_get( $contexts, 'content', '' );
[2080] Fix | Delete
[2081] Fix | Delete
if ( ! empty( $content ) && preg_match_all( $this->pattern, $content, $matches, PREG_SET_ORDER, 0 ) ) {
[2082] Fix | Delete
// Populate the required keys from the content.
[2083] Fix | Delete
foreach ( $matches as $match ) {
[2084] Fix | Delete
if ( ! isset( $match[1] ) ) {
[2085] Fix | Delete
continue;
[2086] Fix | Delete
}
[2087] Fix | Delete
[2088] Fix | Delete
$required_keys[] = $match[1];
[2089] Fix | Delete
}
[2090] Fix | Delete
}
[2091] Fix | Delete
}
[2092] Fix | Delete
[2093] Fix | Delete
// Bail early when the required keys is empty.
[2094] Fix | Delete
if ( ! $required_keys ) {
[2095] Fix | Delete
return true;
[2096] Fix | Delete
}
[2097] Fix | Delete
[2098] Fix | Delete
$fulfilled = true;
[2099] Fix | Delete
[2100] Fix | Delete
foreach ( $required_keys as $required_key => $required_value_compare ) {
[2101] Fix | Delete
if ( ( ! $required_value_compare && is_numeric( $required_key ) ) || ( ! $required_key && ! is_numeric( $required_key ) ) ) {
[2102] Fix | Delete
$fulfilled = false;
[2103] Fix | Delete
break;
[2104] Fix | Delete
}
[2105] Fix | Delete
[2106] Fix | Delete
// Handle zero indexed data.
[2107] Fix | Delete
if ( is_numeric( $required_key ) ) {
[2108] Fix | Delete
$fulfilled = $this->has_value( $required_value_compare );
[2109] Fix | Delete
} else {
[2110] Fix | Delete
$fulfilled = $this->has_value( $required_key, $required_value_compare );
[2111] Fix | Delete
}
[2112] Fix | Delete
[2113] Fix | Delete
// Break the loop once any of required props key is not fulfilled.
[2114] Fix | Delete
if ( ! $fulfilled ) {
[2115] Fix | Delete
break;
[2116] Fix | Delete
}
[2117] Fix | Delete
}
[2118] Fix | Delete
[2119] Fix | Delete
return $fulfilled;
[2120] Fix | Delete
}
[2121] Fix | Delete
[2122] Fix | Delete
/**
[2123] Fix | Delete
* Sort conditionals values list by number of props and conditionals params.
[2124] Fix | Delete
*
[2125] Fix | Delete
* @since 3.27.1
[2126] Fix | Delete
*
[2127] Fix | Delete
* @param array $a Array data to compare.
[2128] Fix | Delete
* @param array $b Array data to compare.
[2129] Fix | Delete
*
[2130] Fix | Delete
* @return array
[2131] Fix | Delete
*/
[2132] Fix | Delete
public function sort_conditional_values( $a, $b ) {
[2133] Fix | Delete
$a_priority = count( $a['props'] ) + count( $a['conditionals'] );
[2134] Fix | Delete
$b_priority = count( $b['props'] ) + count( $b['conditionals'] );
[2135] Fix | Delete
[2136] Fix | Delete
if ( $a_priority === $b_priority ) {
[2137] Fix | Delete
return $a['order'] - $b['order'];
[2138] Fix | Delete
}
[2139] Fix | Delete
[2140] Fix | Delete
return ( $a_priority < $b_priority ) ? -1 : 1;
[2141] Fix | Delete
}
[2142] Fix | Delete
[2143] Fix | Delete
/**
[2144] Fix | Delete
* Gets the Module props.
[2145] Fix | Delete
*
[2146] Fix | Delete
* The Module is restricted in scope. Hence we use this getter.
[2147] Fix | Delete
*
[2148] Fix | Delete
* @since 3.29
[2149] Fix | Delete
*
[2150] Fix | Delete
* @used-by ET_Builder_Module_Woocommerce_Description::multi_view_filter_value()
[2151] Fix | Delete
*
[2152] Fix | Delete
* @return array
[2153] Fix | Delete
*/
[2154] Fix | Delete
public function get_module_props() {
[2155] Fix | Delete
if ( ! isset( $this->props ) ) {
[2156] Fix | Delete
return array();
[2157] Fix | Delete
}
[2158] Fix | Delete
[2159] Fix | Delete
return $this->props;
[2160] Fix | Delete
}
[2161] Fix | Delete
}
[2162] Fix | Delete
[2163] Fix | Delete
It is recommended that you Edit text format, this type of Fix handles quite a lot in one request
Function