refactor: remove Hungarian notation and MCI prefixes

I had to use some RegEx-fu for this. Specifically:

```bash
find ./{footnotes.php,includes.php,class/} -type f -name "*.php" -exec sed -i 's/\(p\|l\|a\)_\(str\|bool\|int\|obj\|flo\|arr\)_//g' {} \;
find ./{footnotes.php,includes.php,class/} -type f -name "*.php" -exec sed -i 's/MCI_Footnotes/Footnotes/g' {} \;
find ./{footnotes.php,includes.php,class/} -type f -name "*.php" -exec sed -i 's/C_\(INT\|STR\|FLO\)_//g' {} \;
```

This should have covered all the bases.

In my testing I encountered one error caused by these changes.
In the `add_select_box` function in `/class/dashboard/layout.php`,
there was a function parameter called `$p_arr_options` and a variable
called `$l_str_options`. Removing the Hungarian notation caused an
error as these two variables were both now called `$options`.

This has been fixed, and I like to think that that will have been
the only naming conflict, but I think it is more likely that there
maybe others. Further testing is required before I am happy calling
this release-ready.

Close #34, progress #36
This commit is contained in:
Ben Goldsworthy 2021-04-16 23:55:05 +01:00
parent df7160fad8
commit 1284544556
15 changed files with 1710 additions and 1710 deletions

View file

@ -14,34 +14,34 @@
*
* @since 1.5.0
*/
class MCI_Footnotes_Convert {
class Footnotes_Convert {
/**
* Converts a integer into the user-defined counter style for the footnotes.
*
* @since 1.5.0
* @param int $p_int_index Index to be converted.
* @param string $p_str_convert_style Style of the new/converted Index.
* @param int $index Index to be converted.
* @param string $convert_style Style of the new/converted Index.
* @return string Converted Index as string in the defined counter style.
*
* Edited:
* @since 2.2.0 lowercase Roman numerals supported
*/
public static function index( $p_int_index, $p_str_convert_style = 'arabic_plain' ) {
switch ( $p_str_convert_style ) {
public static function index( $index, $convert_style = 'arabic_plain' ) {
switch ( $convert_style ) {
case 'romanic':
return self::to_romanic( $p_int_index, true );
return self::to_romanic( $index, true );
case 'roman_low':
return self::to_romanic( $p_int_index, false );
return self::to_romanic( $index, false );
case 'latin_high':
return self::to_latin( $p_int_index, true );
return self::to_latin( $index, true );
case 'latin_low':
return self::to_latin( $p_int_index, false );
return self::to_latin( $index, false );
case 'arabic_leading':
return self::to_arabic_leading( $p_int_index );
return self::to_arabic_leading( $index );
case 'arabic_plain':
default:
return $p_int_index;
return $index;
}
}
@ -50,62 +50,62 @@ class MCI_Footnotes_Convert {
* Function available from A to ZZ ( means 676 footnotes at 1 page possible).
*
* @since 1.0-gamma
* @param int $p_int_value Value/Index to be converted.
* @param bool $p_bool_upper_case True to convert the value to upper case letter, otherwise to lower case.
* @param int $value Value/Index to be converted.
* @param bool $upper_case True to convert the value to upper case letter, otherwise to lower case.
* @return string
*/
private static function to_latin( $p_int_value, $p_bool_upper_case ) {
private static function to_latin( $value, $upper_case ) {
// Output string.
$l_str_return = '';
$l_int_offset = 0;
$return = '';
$offset = 0;
// Check if the value is higher then 26 = Z.
while ( $p_int_value > 26 ) {
while ( $value > 26 ) {
// Increase offset and reduce counter.
$l_int_offset++;
$p_int_value -= 26;
$offset++;
$value -= 26;
}
// If offset set (more then Z), then add a new letter in front.
if ( $l_int_offset > 0 ) {
$l_str_return = chr( $l_int_offset + 64 );
if ( $offset > 0 ) {
$return = chr( $offset + 64 );
}
// Add the origin letter.
$l_str_return .= chr( $p_int_value + 64 );
$return .= chr( $value + 64 );
// Return the latin character representing the integer.
if ( $p_bool_upper_case ) {
return strtoupper( $l_str_return );
if ( $upper_case ) {
return strtoupper( $return );
}
return strtolower( $l_str_return );
return strtolower( $return );
}
/**
* Converts an integer to a leading-0 integer.
*
* @since 1.0-gamma
* @param int $p_int_value Value/Index to be converted.
* @param int $value Value/Index to be converted.
* @return string Value with a leading zero.
*/
private static function to_arabic_leading( $p_int_value ) {
private static function to_arabic_leading( $value ) {
// Add a leading 0 if number lower then 10.
if ( $p_int_value < 10 ) {
return '0' . $p_int_value;
if ( $value < 10 ) {
return '0' . $value;
}
return $p_int_value;
return $value;
}
/**
* Converts an integer to a romanic letter.
*
* @since 1.0-gamma
* @param int $p_int_value Value/Index to be converted.
* @param bool $p_bool_upper_case Whether to uppercase.
* @param int $value Value/Index to be converted.
* @param bool $upper_case Whether to uppercase.
* @return string
*
* Edited:
* @since 2.2.0 optionally lowercase (code from Latin)
*/
private static function to_romanic( $p_int_value, $p_bool_upper_case ) {
private static function to_romanic( $value, $upper_case ) {
// Table containing all necessary romanic letters.
$l_arr_romanic_letters = array(
$romanic_letters = array(
'M' => 1000,
'CM' => 900,
'D' => 500,
@ -121,36 +121,36 @@ class MCI_Footnotes_Convert {
'I' => 1,
);
// Return value.
$l_str_return = '';
$return = '';
// Iterate through integer value until it is reduced to 0.
while ( $p_int_value > 0 ) {
foreach ( $l_arr_romanic_letters as $l_str_romanic => $l_int_arabic ) {
if ( $p_int_value >= $l_int_arabic ) {
$p_int_value -= $l_int_arabic;
$l_str_return .= $l_str_romanic;
while ( $value > 0 ) {
foreach ( $romanic_letters as $romanic => $arabic ) {
if ( $value >= $arabic ) {
$value -= $arabic;
$return .= $romanic;
break;
}
}
}
// Return romanic letters as string.
if ( $p_bool_upper_case ) {
return strtoupper( $l_str_return );
if ( $upper_case ) {
return strtoupper( $return );
}
return strtolower( $l_str_return );
return strtolower( $return );
}
/**
* Converts a string depending on its value to a boolean.
*
* @since 1.0-beta
* @param string $p_str_value String to be converted to boolean.
* @param string $value String to be converted to boolean.
* @return bool Boolean representing the string.
*/
public static function to_bool( $p_str_value ) {
public static function to_bool( $value ) {
// Convert string to lower-case to make it easier.
$p_str_value = strtolower( $p_str_value );
$value = strtolower( $value );
// Check if string seems to contain a "true" value.
switch ( $p_str_value ) {
switch ( $value ) {
case 'checked':
case 'yes':
case 'true':
@ -166,22 +166,22 @@ class MCI_Footnotes_Convert {
* Get a html Array short code depending on Arrow-Array key index.
*
* @since 1.3.2
* @param int $p_int_index Index representing the Arrow. If empty all Arrows are specified.
* @param int $index Index representing the Arrow. If empty all Arrows are specified.
* @return array|string Array of all Arrows if Index is empty otherwise html tag of a specific arrow.
*/
public static function get_arrow( $p_int_index = -1 ) {
public static function get_arrow( $index = -1 ) {
// Define all possible arrows.
$l_arr_arrows = array( '&#8593;', '&#8613;', '&#8607;', '&#8617;', '&#8626;', '&#8629;', '&#8657;', '&#8673;', '&#8679;', '&#65514;' );
$arrows = array( '&#8593;', '&#8613;', '&#8607;', '&#8617;', '&#8626;', '&#8629;', '&#8657;', '&#8673;', '&#8679;', '&#65514;' );
// Convert index to an integer.
if ( ! is_int( $p_int_index ) ) {
$p_int_index = intval( $p_int_index );
if ( ! is_int( $index ) ) {
$index = intval( $index );
}
// Return the whole arrow array.
if ( $p_int_index < 0 || $p_int_index > count( $l_arr_arrows ) ) {
return $l_arr_arrows;
if ( $index < 0 || $index > count( $arrows ) ) {
return $arrows;
}
// Return a single arrow.
return $l_arr_arrows[ $p_int_index ];
return $arrows[ $index ];
}
// phpcs:disable WordPress.PHP.DevelopmentFunctions.error_log_var_dump