Net-FullAuto
view release on metacpan or search on metacpan
lib/Net/FullAuto/ISets/Amazon/GNUSocial_is.pm view on Meta::CPAN
'chmod -v 777 fullauto_clickable_image.png','__display__');
($stdout,$stderr)=$handle->cwd('~');
($stdout,$stderr)=$handle->put('fullauto_clickable_image.png');
($stdout,$stderr)=$handle->cmd($sudo.
'chmod -v 777 fullauto_clickable_image.png','__display__');
($stdout,$stderr)=$handle->cwd('~');
my $sd='/var/www/gnusocial/theme/neo-gnu';
($stdout,$stderr)=$handle->cmd($sudo.
"mv -vf fullauto_clickable_image.png $sd",'__display__');
($stdout,$stderr)=$local->cmd($sudo.
"rm -rvf fullauto_clickable_image.png",'__display__');
$ad=" %SQ%fullauto%SQ% =>%NL%".
" array(%SQ%url%SQ% => %SQ%http://www.fullauto.com%SQ%,%NL%".
" %SQ%title%SQ% => %SQ%FullAuto - Automates EVERYTHING%SQ%,%NL%".
" %SQ%image%SQ% => %NL%".
"\$_path.%SQ%/theme/neo-gnu/fullauto_clickable_image.png%SQ%),%NL%";
($stdout,$stderr)=$handle->cmd("${sudo}sed -i ".
"\'/cc_by_3.0_80x15/a$ad\' /var/www/gnusocial/lib/default.php");
($stdout,$stderr)=$handle->cmd("${sudo}sed -i \"s/%SQ%/\'/g\" ".
'/var/www/gnusocial/lib/default.php');
($stdout,$stderr)=$handle->cmd(
"${sudo}sed -i \'s/%NL%/\'\"`echo \\\\\\n`/g\" ".
"/var/www/gnusocial/lib/default.php");
$handle->cmd_raw(
"${sudo}sed -i 's#\\(^[']fullauto['] =[>]$\\\)# \\1#' ".
'/var/www/gnusocial/lib/default.php');
$ad=' function showFullAuto()%NL%'.
' {%NL%'.
" \$this->elementStart(%SQ%div%SQ%, array(%SQ%id%SQ% => %SQ%fullauto%SQ%));%NL%".
" \$this->element(%SQ%img%SQ%, array(%SQ%id%SQ% => %SQ%fullauto%SQ%,%NL%".
" %SQ%src%SQ% => Theme::path(%SQ%fullauto_clickable_image.png%SQ%),%NL%".
" %SQ%alt%SQ% => common_config(%SQ%fullauto%SQ%, %SQ%title%SQ%),%NL%".
" %SQ%width%SQ% => %SQ%83%SQ%,%NL%".
" %SQ%height%SQ% => %SQ%40%SQ%));%NL%".
" \$this->text(%SQ% %SQ%);%NL%".
" \$this->elementStart(%SQ%a%SQ%, array(%SQ%class%SQ% => %SQ%fullauto url%SQ%,%NL%".
" %SQ%href%SQ% => common_config(%SQ%fullauto%SQ%, %SQ%url%SQ%)));%NL%".
" \$link = sprintf(%SQ%<a class=\"fullauto_image\" rel=\"fullauto\" href=\"%1\$s\">%2\$s</a>%SQ%,%NL%".
" htmlspecialchars(common_config(%SQ%fullauto%SQ%, %SQ%url%SQ%)),%NL%".
" htmlspecialchars(common_config(%SQ%fullauto%SQ%, %SQ%title%SQ%)));%NL%".
" \$this->raw(\@sprintf(\$link));%NL%".
" \$this->elementEnd(%SQ%a%SQ%);".
" \$this->elementEnd(%SQ%div%SQ%);%NL%".
" }%NL%";
($stdout,$stderr)=$handle->cmd("${sudo}sed -i ".
"\'/function showFooter/i$ad\' /var/www/gnusocial/lib/action.php");
($stdout,$stderr)=$handle->cmd("${sudo}sed -i \"s/%SQ%/\'/g\" ".
'/var/www/gnusocial/lib/action.php');
($stdout,$stderr)=$handle->cmd(
"${sudo}sed -i \'s/%NL%/\'\"`echo \\\\\\n`/g\" ".
"/var/www/gnusocial/lib/action.php");
$handle->cmd_raw(
"${sudo}sed -i 's#\\(^function showFullAuto[(][)]$\\\)# \\1#' ".
'/var/www/gnusocial/lib/action.php');
($stdout,$stderr)=$handle->cmd("${sudo}sed -i ".
"\'/-[>]showContentLic/a\$this->showFullAuto();\' /var/www/gnusocial/lib/action.php");
$handle->cmd_raw(
"${sudo}sed -i 's#\\(^\$this-[>]showFullAuto[(][)]$\\\)# \\1#' ".
'/var/www/gnusocial/lib/action.php');
#
# echo-ing/streaming files over ssh can be tricky. Use echo -e
# and replace these characters with thier HEX
# equivalents (use an external editor for quick
# search and replace - and paste back results.
# use copy/paste or cat file and copy/paste results.):
#
# ! - \\x21
# " - \\x22
# $ - \\x24
#
# https://www.lisenet.com/2014/ - bash approach to conversion
my ($hash,$output,$error)=('','','');
my $c="aws iam list-access-keys --user-name gnusocial_email";
($hash,$output,$error)=run_aws_cmd($c);
$hash||={};
foreach my $hash (@{$hash->{AccessKeyMetadata}}) {
my $c="aws iam delete-access-key --access-key-id $hash->{AccessKeyId} ".
"--user-name gnusocial_email";
($hash,$output,$error)=run_aws_cmd($c);
}
sleep 1;
$c="aws iam delete-user --user-name gnusocial_email";
($hash,$output,$error)=run_aws_cmd($c);
$c="aws iam create-user --user-name gnusocial_email";
($hash,$output,$error)=run_aws_cmd($c);
$c="aws iam create-access-key --user-name gnusocial_email";
($hash,$output,$error)=run_aws_cmd($c);
$hash||={};
my $access_id=$hash->{AccessKey}->{AccessKeyId};
my $secret_access_key=$hash->{AccessKey}->{SecretAccessKey};
my $java_smtp_generator=<<END;
import javax.crypto.Mac;
import javax.crypto.spec.SecretKeySpec;
import javax.xml.bind.DatatypeConverter;
public class SesSmtpCredentialGenerator {
// From http://docs.aws.amazon.com/ses/latest/DeveloperGuide/smtp-credentials.html
private static final String KEY_ENV_VARIABLE = \\x22AWS_SECRET_ACCESS_KEY\\x22; // Put your AWS secret access key in this environment variable.
private static final String MESSAGE = \\x22SendRawEmail\\x22; // Used to generate the HMAC signature. Do not modify.
private static final byte VERSION = 0x02; // Version number. Do not modify.
public static void main(String[] args) {
// Get the AWS secret access key from environment variable AWS_SECRET_ACCESS_KEY.
String key = System.getenv(KEY_ENV_VARIABLE);
if (key == null)
{
System.out.println(\\x22Error: Cannot find environment variable AWS_SECRET_ACCESS_KEY.\\x22);
System.exit(0);
}
// Create an HMAC-SHA256 key from the raw bytes of the AWS secret access key.
SecretKeySpec secretKey = new SecretKeySpec(key.getBytes(), \\x22HmacSHA256\\x22);
try {
// Get an HMAC-SHA256 Mac instance and initialize it with the AWS secret access key.
Mac mac = Mac.getInstance(\\x22HmacSHA256\\x22);
mac.init(secretKey);
( run in 1.009 second using v1.01-cache-2.11-cpan-140bd7fdf52 )