pxg 1.1.1 → 1.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (4) hide show
  1. data/bin/pxg +8 -3
  2. data/lib/pxg.rb +28 -1
  3. metadata +32 -4
  4. checksums.yaml +0 -15
data/bin/pxg CHANGED
@@ -5,9 +5,12 @@ require 'pxg'
5
5
 
6
6
  if ARGV.length > 0
7
7
  pxg = Pxg.new;
8
- command = ARGV.shift
8
+ actual_command = ARGV.shift
9
+ command = actual_command.gsub ':', '_'
9
10
  if pxg.respond_to? command
10
11
  pxg.send command, ARGV
12
+ else # ! nyx.respond_to? command
13
+ puts " err: unknown command #{actual_command}"
11
14
  end#if
12
15
  else # ARGV.length == 0
13
16
 
@@ -15,8 +18,10 @@ puts
15
18
  puts <<eos
16
19
  Commands
17
20
  ------------------------------------------------------------------------------
18
- pxg version - current interface version
19
- pxg compile [<dir>] - reads pxg.json from directory and resolves it
21
+ pxg version - current interface version
22
+ pxg compile [<dir>] - reads pxg.json from directory and resolves it
23
+ pxg reimage [<xml>] [new-urls.txt] - reads urls from new-urls.txt replaces all attachment
24
+ images with urls in new urls
20
25
  eos
21
26
 
22
27
  end#if
data/lib/pxg.rb CHANGED
@@ -5,11 +5,38 @@ require 'fileutils'
5
5
  # gems
6
6
  require 'git'
7
7
  require 'json'
8
+ require 'xmlsimple'
8
9
 
9
10
  class Pxg
10
11
 
11
12
  VERSION = '1.1.0'
12
13
 
14
+ def reimage(argv)
15
+ xml = argv[0]
16
+ new_images = argv[1]
17
+ text = File.read new_images
18
+ text.strip!
19
+ image_urls = text.split "\n"
20
+ # read xml
21
+ xml_data = File.read xml
22
+ # eg image: http://pixelgrade.com/demos/bucket/wp-content/uploads/2013/10/kelly-brooks.jpg
23
+ # locate all images
24
+ rimages = xml_data.scan /(http(s){0,1}:\/\/[^"<>]*\/[0-9]{4}\/[0-9]{2}\/[^"<>]+\.(jpg|png|tiff|gif))/
25
+ targets = []
26
+ rimages.each do |arr|
27
+ match_data = arr[0].match /(http(s){0,1}:\/\/[^"<>]*\/)([0-9]{4}\/[0-9]{2}\/[^"<>]+\.(jpg|png|tiff|gif))/
28
+ targets.push([match_data[0], match_data[1], arr[0].gsub(match_data[1], '')])
29
+ end#each
30
+
31
+ targets.each do |img|
32
+ random_image = image_urls.sample.split ' '
33
+ xml_data.gsub! img[0], random_image[1]
34
+ xml_data.gsub! img[2], img[2][0..7] + random_image[0]
35
+ end#each
36
+
37
+ puts xml_data
38
+ end#def
39
+
13
40
  def find_and_replace(path, search, replace)
14
41
  clean_path = path.sub(/(\/)+$/, '') + '/'
15
42
  Dir.glob "#{clean_path}**/*.php" do |file|
@@ -43,7 +70,7 @@ class Pxg
43
70
  srcpath = File.expand_path(rawsrcpath) + '/'
44
71
  localpath = File.expand_path(rawlocalpath) + '/'
45
72
  themepath = File.expand_path(rawthemepath) + '/'
46
- Dir.glob "#{srcpath}**/*" do |file|
73
+ Dir.glob("#{srcpath}**/*", File::FNM_DOTMATCH) do |file|
47
74
  next if file == '.' or file == '..'
48
75
  filepath = File.expand_path(file)
49
76
  filesubpath = filepath.sub srcpath, ''
metadata CHANGED
@@ -1,7 +1,8 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: pxg
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.1
4
+ version: 1.2.0
5
+ prerelease:
5
6
  platform: ruby
6
7
  authors:
7
8
  - srcspider
@@ -13,6 +14,7 @@ dependencies:
13
14
  - !ruby/object:Gem::Dependency
14
15
  name: git
15
16
  requirement: !ruby/object:Gem::Requirement
17
+ none: false
16
18
  requirements:
17
19
  - - ! '>='
18
20
  - !ruby/object:Gem::Version
@@ -23,6 +25,7 @@ dependencies:
23
25
  type: :runtime
24
26
  prerelease: false
25
27
  version_requirements: !ruby/object:Gem::Requirement
28
+ none: false
26
29
  requirements:
27
30
  - - ! '>='
28
31
  - !ruby/object:Gem::Version
@@ -33,6 +36,7 @@ dependencies:
33
36
  - !ruby/object:Gem::Dependency
34
37
  name: json
35
38
  requirement: !ruby/object:Gem::Requirement
39
+ none: false
36
40
  requirements:
37
41
  - - ! '>='
38
42
  - !ruby/object:Gem::Version
@@ -43,6 +47,7 @@ dependencies:
43
47
  type: :runtime
44
48
  prerelease: false
45
49
  version_requirements: !ruby/object:Gem::Requirement
50
+ none: false
46
51
  requirements:
47
52
  - - ! '>='
48
53
  - !ruby/object:Gem::Version
@@ -50,6 +55,28 @@ dependencies:
50
55
  - - <
51
56
  - !ruby/object:Gem::Version
52
57
  version: '2.0'
58
+ - !ruby/object:Gem::Dependency
59
+ name: xml-simple
60
+ requirement: !ruby/object:Gem::Requirement
61
+ none: false
62
+ requirements:
63
+ - - ! '>='
64
+ - !ruby/object:Gem::Version
65
+ version: '1.1'
66
+ - - <
67
+ - !ruby/object:Gem::Version
68
+ version: '2.0'
69
+ type: :runtime
70
+ prerelease: false
71
+ version_requirements: !ruby/object:Gem::Requirement
72
+ none: false
73
+ requirements:
74
+ - - ! '>='
75
+ - !ruby/object:Gem::Version
76
+ version: '1.1'
77
+ - - <
78
+ - !ruby/object:Gem::Version
79
+ version: '2.0'
53
80
  description: Pixelgrade Utilities
54
81
  email: source.spider@gmail.com
55
82
  executables:
@@ -62,25 +89,26 @@ files:
62
89
  homepage: http://rubygems.org/gems/pxg
63
90
  licenses:
64
91
  - MIT
65
- metadata: {}
66
92
  post_install_message:
67
93
  rdoc_options: []
68
94
  require_paths:
69
95
  - lib
70
96
  required_ruby_version: !ruby/object:Gem::Requirement
97
+ none: false
71
98
  requirements:
72
99
  - - ! '>='
73
100
  - !ruby/object:Gem::Version
74
101
  version: '0'
75
102
  required_rubygems_version: !ruby/object:Gem::Requirement
103
+ none: false
76
104
  requirements:
77
105
  - - ! '>='
78
106
  - !ruby/object:Gem::Version
79
107
  version: '0'
80
108
  requirements: []
81
109
  rubyforge_project:
82
- rubygems_version: 2.0.6
110
+ rubygems_version: 1.8.24
83
111
  signing_key:
84
- specification_version: 4
112
+ specification_version: 3
85
113
  summary: Project managing helpers
86
114
  test_files: []
checksums.yaml DELETED
@@ -1,15 +0,0 @@
1
- ---
2
- !binary "U0hBMQ==":
3
- metadata.gz: !binary |-
4
- ZDNiM2M0YmM0MzYyMzY5ZGQ2NzdkYjhmZjVlZDIzNTNkOGRjOWU2Zg==
5
- data.tar.gz: !binary |-
6
- NWIwNjczZDNmYTRlYTUyYmE5MDc2M2EwNTk0MzY4ZDY3NmFhYjZlZg==
7
- !binary "U0hBNTEy":
8
- metadata.gz: !binary |-
9
- Mzc2M2QyZTUyNjIwMTZkNzc2YzgzMzM0ZDgxMWFhZWExODE2MzU3Mzk3NzZj
10
- NDE4YzdjYjQ3MWZiYmFiYzBkMzNiYWY3MmFjM2FhZTYwYjcxMDY4MmZkM2Rh
11
- YTE3ZDM0ODMwMTI2ZmFkNjEwOTk4ZDFkNDY1NWEzYzY0NWM4NDA=
12
- data.tar.gz: !binary |-
13
- ZmYwMmYwNmYyYTk4M2MxNzMwNjVjMDhmY2Y4NGNmZDA1NDAwNGYxOGVhY2Rj
14
- OTFmZGE3ZWRkZGE5MmFiZTcxNGY5ZjU2MTUyYTM1ODI0OThjYmUzMDNkNDE1
15
- ZWEzZWVkZTNlYjg4ZjYwOTE5M2RmN2QyNGY3MDdjYjllODlmOWE=