summaryrefslogtreecommitdiff
path: root/bin
diff options
context:
space:
mode:
Diffstat (limited to 'bin')
-rwxr-xr-xbin/3add19
-rwxr-xr-xbin/3commit26
-rwxr-xr-xbin/3diff13
-rw-r--r--bin/cch.finish_failed51
-rw-r--r--bin/cch.redelete52
5 files changed, 161 insertions, 0 deletions
diff --git a/bin/3add b/bin/3add
new file mode 100755
index 000000000..8bc034d9c
--- /dev/null
+++ b/bin/3add
@@ -0,0 +1,19 @@
+#!/usr/bin/perl
+
+use Cwd;
+use String::ShellQuote;
+
+my $USER = $ENV{USER};
+
+my $dir = getcwd;
+( my $prefix = $dir ) =~ s(^/home/$USER/freeside/?)() or die $dir; #eventually from anywhere
+
+system join('',
+ "git add @ARGV ; ",
+ "( for file in @ARGV; do ",
+ "cp -i \$file /home/$USER/freeside3/$prefix/`dirname \$file`;",
+ "done ) && ",
+ "cd /home/$USER/freeside3/$prefix/ && ",
+ "git add @ARGV"
+);
+
diff --git a/bin/3commit b/bin/3commit
new file mode 100755
index 000000000..cd1db2174
--- /dev/null
+++ b/bin/3commit
@@ -0,0 +1,26 @@
+#!/usr/bin/perl
+
+# usage: 23commit 'log message' filename filename ...
+
+use Cwd;
+use String::ShellQuote;
+
+my $USER = $ENV{USER};
+
+my $dir = getcwd;
+( my $prefix = $dir ) =~ s(^/home/$USER/freeside/?)() or die $dir; #eventually from anywhere
+
+my $desc = shell_quote(shift @ARGV); # -m
+
+die "no files!" unless @ARGV;
+
+#warn "$prefix";
+
+#print <<END;
+system join('',
+ "( cd /home/$USER/freeside3/$prefix; git pull ) && ",
+ "git diff -u @ARGV | ( cd /home/$USER/freeside3/$prefix; patch -p1 ) ",
+ " && ( ( git pull && git commit -m $desc @ARGV && git push ); ",
+ "( cd /home/$USER/freeside3/$prefix; git commit -m $desc @ARGV && git push ) )"
+);
+
diff --git a/bin/3diff b/bin/3diff
new file mode 100755
index 000000000..badafd579
--- /dev/null
+++ b/bin/3diff
@@ -0,0 +1,13 @@
+#!/usr/bin/perl
+
+my $file = shift;
+
+chomp(my $dir = `pwd`);
+$dir =~ s/freeside(\/?)/freeside3$1/;
+warn $dir;
+
+#$cmd = "diff -u $file $dir/$file";
+$cmd = "diff -ubBw $dir/$file $file";
+print "$cmd\n";
+system($cmd);
+
diff --git a/bin/cch.finish_failed b/bin/cch.finish_failed
new file mode 100644
index 000000000..cb2533044
--- /dev/null
+++ b/bin/cch.finish_failed
@@ -0,0 +1,51 @@
+#!/usr/bin/perl -w
+
+use strict;
+use Storable qw( thaw nfreeze );
+use MIME::Base64;
+use FS::UID qw( adminsuidsetup );
+use FS::tax_rate;
+
+adminsuidsetup(shift);
+
+#my @namelist = qw( code detail geocode plus4 txmatrix zip );
+my @namelist = qw( code detail plus4 txmatrix zip );
+
+my $cache_dir = '/usr/local/etc/freeside/cache.'. $FS::UID::datasrc. '/';
+my $dir = $cache_dir.'taxdata/cch';
+
+my @list = ();
+foreach my $name ( @namelist ) {
+ my $difffile = "$dir.new/$name.txt";
+ if (1) { # ($update) {
+ #my $error = $job->update_statustext( "0,Comparing to previous $name" );
+ #die $error if $error;
+ warn "processing $dir.new/$name.txt\n"; # if $DEBUG;
+ #my $olddir = $update ? "$dir.1" : "";
+ my $olddir = "$dir.1";
+ $difffile = FS::tax_rate::_perform_cch_diff( $name, "$dir.new", $olddir );
+ }
+ $difffile =~ s/^$cache_dir//;
+ push @list, "${name}file:$difffile";
+}
+
+# perform the import
+local $FS::tax_rate::keep_cch_files = 1;
+my $param = {
+ 'format' => 'cch-update',
+ 'uploaded_files' => join( ',', @list ),
+};
+my $error =
+ #_perform_batch_import( $job, encode_base64( nfreeze( $param ) ) );
+ FS::tax_rate::_perform_batch_import( '', encode_base64( nfreeze( $param ) ) );
+
+if ( $error ) {
+ warn "ERROR: $error\n";
+} else {
+ warn "success!\n";
+}
+
+#XXX do this manually
+#rename "$dir.new", "$dir"
+# or die "cch tax update processed, but can't rename $dir.new: $!\n";
+
diff --git a/bin/cch.redelete b/bin/cch.redelete
new file mode 100644
index 000000000..2cff389ad
--- /dev/null
+++ b/bin/cch.redelete
@@ -0,0 +1,52 @@
+#!/usr/bin/perl -w
+
+use strict;
+use Storable qw( thaw nfreeze );
+use MIME::Base64;
+use FS::UID qw( adminsuidsetup );
+use FS::tax_rate;
+
+adminsuidsetup(shift);
+
+#my @namelist = qw( code detail geocode plus4 txmatrix zip );
+my @namelist = qw( plus4 txmatrix zip );
+
+my $cache_dir = '/usr/local/etc/freeside/cache.'. $FS::UID::datasrc. '/';
+my $dir = $cache_dir.'taxdata/cch';
+
+my @list = ();
+foreach my $name ( @namelist ) {
+ my $difffile = "$dir.new/$name.txt";
+ if (1) { # ($update) {
+ #my $error = $job->update_statustext( "0,Comparing to previous $name" );
+ #die $error if $error;
+ warn "processing $dir.new/$name.txt\n"; # if $DEBUG;
+ #my $olddir = $update ? "$dir.1" : "";
+ my $olddir = "$dir.1";
+ $difffile = FS::tax_rate::_perform_cch_diff( $name, "$dir.new", $olddir );
+ }
+ $difffile =~ s/^$cache_dir//;
+ push @list, "${name}file:$difffile";
+}
+
+# perform the import
+local $FS::tax_rate::keep_cch_files = 1;
+my $param = {
+ 'format' => 'cch-update',
+ 'uploaded_files' => join( ',', @list ),
+ 'delete_only' => 1,
+};
+my $error =
+ #_perform_batch_import( $job, encode_base64( nfreeze( $param ) ) );
+ FS::tax_rate::_perform_batch_import( '', encode_base64( nfreeze( $param ) ) );
+
+if ( $error ) {
+ warn "ERROR: $error\n";
+} else {
+ warn "success!\n";
+}
+
+#XXX do this manually
+#rename "$dir.new", "$dir"
+# or die "cch tax update processed, but can't rename $dir.new: $!\n";
+