Skip to content

Commit

Permalink
Merge pull request #142 from websharks/feature/72-step1
Browse files Browse the repository at this point in the history
Modify i18n Utilities Class; See #72
  • Loading branch information
JasWSInc committed Aug 24, 2015
2 parents a5ffb6b + 5d1e9b9 commit 0b8357a
Showing 1 changed file with 55 additions and 28 deletions.
83 changes: 55 additions & 28 deletions comment-mail/includes/classes/utils-i18n.php
Expand Up @@ -26,37 +26,64 @@ class utils_i18n extends abs_base
* @since 141111 First documented version.
*
* @param string $action An action; e.g. `confirm`, `delete`, `unconfirm`, etc.
* @param string $transform Defaults to `lower`.
*
* @return string The string translation for the given `$action`.
*/
public function action_ed($action)
public function action_ed($action, $transform = 'lower')
{
$action = strtolower(trim((string)$action));

switch($action) // Convert to past tense.
{
case 'reconfirm':
return __('reconfirmed', $this->plugin->text_domain);

case 'confirm':
return __('confirmed', $this->plugin->text_domain);

case 'unconfirm':
return __('unconfirmed', $this->plugin->text_domain);

case 'suspend':
return __('suspended', $this->plugin->text_domain);

case 'trash':
return __('trashed', $this->plugin->text_domain);

case 'update':
return __('updated', $this->plugin->text_domain);

case 'delete':
return __('deleted', $this->plugin->text_domain);
}
return !$action ? '' : __(rtrim($action, 'ed').'ed', $this->plugin->text_domain);
$action = $i18n = strtolower(trim((string)$action));

switch($action) // Convert to past tense.
{
case 'reconfirm':
$i18n = __('reconfirmed', $this->plugin->text_domain);
break;

case 'confirm':
$i18n = __('confirmed', $this->plugin->text_domain);
break;

case 'unconfirm':
$i18n = __('unconfirmed', $this->plugin->text_domain);
break;

case 'suspend':
$i18n = __('suspended', $this->plugin->text_domain);
break;

case 'trash':
$i18n = __('trashed', $this->plugin->text_domain);
break;

case 'update':
$i18n = __('updated', $this->plugin->text_domain);
break;

case 'delete':
$i18n = __('deleted', $this->plugin->text_domain);
break;

default: // Default case handler.
if($action) // Only if it's not empty.
$i18n = __(rtrim($action, 'ed').'ed', $this->plugin->text_domain);
break;
}
if(ctype_alnum($i18n)) switch($transform)
{
case 'lower':
$i18n = strtolower($i18n);
break;

case 'upper':
$i18n = strtoupper($i18n);
break;

case 'ucwords':
$i18n = ucwords($i18n);
break;
}
return $i18n;
}

/**
Expand Down Expand Up @@ -285,4 +312,4 @@ public function log_entry_js_deletion_confirmation_warning()
}
}
}
}
}

0 comments on commit 0b8357a

Please sign in to comment.