Class: Cyberweb::CorrectImageEntriesInHtmlFile
- Inherits:
-
Base
- Object
- Base
- Cyberweb::CorrectImageEntriesInHtmlFile
show all
- Defined in:
- lib/cyberweb/standalone_classes/correct_image_entries_in_html_file.rb
Overview
Cyberweb::CorrectImageEntriesInHtmlFile
Constant Summary
collapse
- DEFAULT_FILE =
'/root/DiamondShell/html/DSA_COMPUTERSPIELE.html'
- PATH_TO_THE_IMAGE_DIRECTORY =
#
PATH_TO_THE_IMAGE_DIRECTORY
#
'/home/x/data/images/'
- ALSO_COPY_IMAGE_FILE =
true
Constants inherited
from Base
Base::HOME_DIRECTORY_OF_THE_USER_X, Base::NAMESPACE
Instance Method Summary
collapse
Methods inherited from Base
#be_verbose, #be_verbose?, #cascading_style_sheets_directory?, #cd, #commandline_mode?, #copyright?, #css_comment, #delete_directory, #do_toggle, #e, #echo_raw, #filename?, #full_path_to_image_directory?, #html_colours?, #html_image, #htmlentities, #img_dir?, #infer_the_namespace, #initialize_the_configuration, #is_a_file?, #is_a_video_file?, #is_an_image_file?, #is_on_roebe?, #last_tag_used?, #last_tag_used_first_element?, #last_tag_used_id?, #mkdir, #mode?, #namespace?, #open_in_browser, #opne, #opnn, #remove_comments_from_this_string_but_preserve_CSS_rules, #remove_html, #return_all_directories, #return_date, #return_program_name, #return_pwd, #ruby_header?, #server_base_directory?, #set_commandline_mode, #set_last_tag_used, #update_the_image_directory, #use_this_relative_directory_for_custom_images?, #www_mode?
#copy_this_file, #cpr, #delete_file, #filename_without_extension?, #read_file_via_utf8_encoding
Methods included from BaseModule
#attach_these_constants, #base_dir?, #beautiful_url, #cd, #create_the_internal_hash, #doctype?, #ee, #ensure_main_encoding, #esystem, #html_templates, #initialize_the_config_if_the_config_hash_is_empty, #internal_hash?, #log_dir?, #no_http, #random_alphabet_characters, #rarrow?, #rds, #remove_comments_from_this_string, #remove_numbers, #require_the_html_templates, #require_these, #return_file_size_in_kb_of, #return_html_comment, #ruby_sitelib_dir?, #sanitize_this_id, #server_base_directory?, #string_remote_image, #today?, #try_to_require_rack, #try_to_require_the_open_gem, #write_what_into
#content_type_is_html, #content_type_is_jpeg, #content_type_is_json, #content_type_is_plain_text
#append_to_the_commandline_arguments, #commandline_arguments?, #first_argument?, #parse_these_commandline_arguments, #second_argument?, #set_commandline_arguments
#all_html_colours, #lightgreen, #rev, #sdir, #sfancy, #sfile, #simp, #steelblue, #tomato
Constructor Details
43
44
45
46
47
48
49
50
|
# File 'lib/cyberweb/standalone_classes/correct_image_entries_in_html_file.rb', line 43
def initialize(
i = nil,
run_already = true
)
reset
set_this_html_file(i)
run if run_already
end
|
Instance Method Details
#copy_file(from, to) ⇒ Object
#
copy_file
We require absolute paths for the ‘to` argument to this method.
#
138
139
140
141
142
143
144
145
146
147
|
# File 'lib/cyberweb/standalone_classes/correct_image_entries_in_html_file.rb', line 138
def copy_file(from, to)
to = to.to_s.dup
unless to.start_with? '/'
to.prepend File.dirname(image_directory?)+'/'
end
unless File.exist? to
opn; e 'Now copying `'+simp(from)+'` to `'+simp(to)+'`.'
FileUtils.cp(from, to)
end
end
|
#create_images_directory ⇒ Object
#
create_images_directory
#
109
110
111
112
113
114
|
# File 'lib/cyberweb/standalone_classes/correct_image_entries_in_html_file.rb', line 109
def create_images_directory
_ = @image_directory = File.dirname(file?)+'/images/'
e 'Will create a directory at `'+sdir(_)+'`.'
delete_directory(_)
FileUtils.mkdir_p(_)
end
|
#dataset? ⇒ Boolean
Also known as:
data?
102
103
104
|
# File 'lib/cyberweb/standalone_classes/correct_image_entries_in_html_file.rb', line 102
def dataset?
@dataset
end
|
#image_directory? ⇒ Boolean
129
130
131
|
# File 'lib/cyberweb/standalone_classes/correct_image_entries_in_html_file.rb', line 129
def image_directory?
@image_directory
end
|
84
85
86
|
# File 'lib/cyberweb/standalone_classes/correct_image_entries_in_html_file.rb', line 84
def input?
@this_html_file
end
|
#modify_original_dataset ⇒ Object
#
modify_original_dataset
#
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
|
# File 'lib/cyberweb/standalone_classes/correct_image_entries_in_html_file.rb', line 166
def modify_original_dataset
_ = [] @dataset.split(N).each {|entry|
if entry.include? PATH_TO_THE_IMAGE_DIRECTORY
if ALSO_COPY_IMAGE_FILE
regex = /<img src="(\/\S+)"\s*/
entry =~ regex
from = $1.to_s.dup
to = File.basename(@image_directory)+'/'+File.basename(from)
copy_file(from, to)
end
entry = replace_img_path(entry)
entry.gsub!(/(<img src="(.+)")/, File.basename('\1'))
end
_ << entry
}
@dataset = _.join(N)
end
|
#read_in_dataset(i = input?)
) ⇒ Object
91
92
93
94
95
96
97
|
# File 'lib/cyberweb/standalone_classes/correct_image_entries_in_html_file.rb', line 91
def read_in_dataset(i = input?)
if File.exist? i
@dataset = File.read(i)
else
e "No file at #{sfile(i)} exists."
end
end
|
#replace_img_path(i) ⇒ Object
152
153
154
155
156
157
158
159
160
161
|
# File 'lib/cyberweb/standalone_classes/correct_image_entries_in_html_file.rb', line 152
def replace_img_path(i)
splitted = i.split PATH_TO_THE_IMAGE_DIRECTORY
if splitted[-1].include? '.png'
splitted[-1].gsub!(/(.+\.png)/) {|entry| File.basename(entry) }
elsif splitted[-1].include? '.jpg'
splitted[-1].gsub!(/(.+\.jpg)/) {|entry| File.basename(entry) }
end
target = (File.basename(@image_directory)+'/').squeeze('/')
splitted.join(target)
end
|
55
56
57
58
59
60
61
62
63
|
# File 'lib/cyberweb/standalone_classes/correct_image_entries_in_html_file.rb', line 55
def reset
super()
@dataset = nil
end
|
189
190
191
192
193
194
195
196
197
198
|
# File 'lib/cyberweb/standalone_classes/correct_image_entries_in_html_file.rb', line 189
def run
create_images_directory
read_in_dataset
n_entries = data?.scan(/images\//).size
opn; e 'There are '+simp(n_entries.to_s)+' occurrences of IMG/'
opn; e 'We will now modify that dataset.'
modify_original_dataset
save_new_file
opn; e 'Finished.'
end
|
#save_new_file ⇒ Object
119
120
121
122
123
124
|
# File 'lib/cyberweb/standalone_classes/correct_image_entries_in_html_file.rb', line 119
def save_new_file
require 'save_File'
what = dataset?
into = file?
SaveFile.write_what_into(what, into)
end
|
#set_this_html_file(i = DEFAULT_FILE) ⇒ Object
68
69
70
71
72
73
74
75
76
77
78
79
|
# File 'lib/cyberweb/standalone_classes/correct_image_entries_in_html_file.rb', line 68
def set_this_html_file(i = DEFAULT_FILE)
i = i.first if i.is_a? Array
i = DEFAULT_FILE if i.nil?
i = i.to_s.dup
if i.start_with? 'file://'
i[0, 'file://'.size] = ''
end
unless i.end_with? '.html'
raise NotAHtmlFile, 'We can only work on .html files.'
end
@this_html_file = i
end
|