Completed Info Maker secti...
Jeremy D authored 12 years ago
|
assets/script_mod.js 1) /*
assets/script_mod.js 2) * SMF Package Manager Generator
assets/script_mod.js 3) * Author: SleePy (JeremyD)
assets/script_mod.js 4) * Repository: https://github.com/jdarwood007/smf_package_maker
assets/script_mod.js 5) * License: BSD 3 Clause; See license.txt
assets/script_mod.js 6) */
assets/script_mod.js 7)
assets/script_mod.js 8) /* This gets things going once the document has loaded, also makes sure JQuery is here. */
|
Initial SMF Package Maker S...
Jeremy D authored 12 years ago
|
assets/script.js 9) $(document).ready(function(){
|
Completed Info Maker secti...
Jeremy D authored 12 years ago
|
assets/script_mod.js 10) /* Start off some counting */
|
Initial SMF Package Maker S...
Jeremy D authored 12 years ago
|
assets/script.js 11) file_count = 1;
assets/script.js 12) edit_count =new Array();
assets/script.js 13) edit_count[file_count] = 1;
assets/script.js 14)
|
Completed Info Maker secti...
Jeremy D authored 12 years ago
|
assets/script_mod.js 15) /* Kick things off by creating a file. */
|
Initial SMF Package Maker S...
Jeremy D authored 12 years ago
|
assets/script.js 16) create_new_file();
assets/script.js 17)
assets/script.js 18) $('#add_file').click(create_new_file);
assets/script.js 19)
|
Completed Info Maker secti...
Jeremy D authored 12 years ago
|
assets/script_mod.js 20) /* Give our buttons some actions. */
|
Initial SMF Package Maker S...
Jeremy D authored 12 years ago
|
assets/script.js 21) $('#show_preview').click(show_edit_preview);
|
Completed Info Maker secti...
Jeremy D authored 12 years ago
|
assets/script_mod.js 22)
assets/script_mod.js 23) /* The details and basic buttons. */
assets/script_mod.js 24) $('#collapse_basic').click(function(){$('#basic_info .info').hide(); $('#collapse_basic').hide(); $('#restore_basic').show();});
assets/script_mod.js 25) $('#restore_basic').click(function(){$('#basic_info .info').show(); $('#restore_basic').hide(); $('#collapse_basic').show();});
assets/script_mod.js 26) $('#collapse_details').click(function(){$('#details_info .info').hide(); $('#collapse_details').hide(); $('#restore_details').show();});
assets/script_mod.js 27) $('#restore_details').click(function(){$('#details_info .info').show(); $('#restore_details').hide(); $('#collapse_details').show();});
|
Initial SMF Package Maker S...
Jeremy D authored 12 years ago
|
assets/script.js 28) });
assets/script.js 29)
assets/script.js 30) /* Handles adding files */
assets/script.js 31) function create_new_file()
assets/script.js 32) {
assets/script.js 33) /* We have been through this before */
assets/script.js 34) $('#file_container').append($('#file_template').html().replace(/#FILEINDEX#/g, file_count));
assets/script.js 35)
assets/script.js 36) /* We need to bind the new create edit button */
assets/script.js 37) $('.add_edit').click(create_new_edit);
assets/script.js 38)
assets/script.js 39) /* Now we pretend to click said element */
assets/script.js 40) $('#file-' + file_count).find('.add_edit').click();
assets/script.js 41)
|
Added Package Info stuff a...
Jeremy D authored 12 years ago
|
assets/script_mod.js 42) $('#file-' + file_count + ' .collapse_file').click(collapse_file);
assets/script_mod.js 43) $('#file-' + file_count + ' .expand_file').click(expand_file);
assets/script_mod.js 44) $('#file-' + file_count + ' .delete_file').click(delete_file);
assets/script_mod.js 45) $('#file-' + file_count + ' .restore_file').click(restore_file);
assets/script_mod.js 46)
|
Initial SMF Package Maker S...
Jeremy D authored 12 years ago
|
assets/script.js 47) /* Move the index and add defaults */
assets/script.js 48) file_count++;
assets/script.js 49) edit_count[file_count] = 1;
assets/script.js 50)
assets/script.js 51) update_counter();
assets/script.js 52) }
assets/script.js 53)
assets/script.js 54) /* Handles adding of edits */
assets/script.js 55) function create_new_edit()
assets/script.js 56) {
assets/script.js 57) file_index = $(this).attr('data-file');
assets/script.js 58)
assets/script.js 59) $('#file-' + file_index + '-edit_container').append($('#edit_template').html().replace(/#FILEINDEX#/g, file_index).replace(/#EDITINDEX#/g, edit_count[file_index]));
assets/script.js 60) edit_count[file_index]++;
assets/script.js 61)
assets/script.js 62) $('#file-' + file_index + '-edit_container .collapse_change').click(collapse_edit);
assets/script.js 63) $('#file-' + file_index + '-edit_container .expand_change').click(expand_edit);
assets/script.js 64) $('#file-' + file_index + '-edit_container .delete_change').click(delete_edit);
assets/script.js 65) $('#file-' + file_index + '-edit_container .restore_change').click(restore_edit);
assets/script.js 66)
assets/script.js 67) update_counter();
assets/script.js 68) }
assets/script.js 69)
assets/script.js 70) /* Handles collapsing of the edit */
assets/script.js 71) function collapse_edit()
assets/script.js 72) {
assets/script.js 73) file_index = $(this).attr('data-file');
assets/script.js 74) edit_index = $(this).attr('data-edit');
assets/script.js 75)
assets/script.js 76) /* Simply hide the edit, and give a expand button */
assets/script.js 77) $('#file-' + file_index + '-edit-' + edit_index + ' .edits').hide();
assets/script.js 78) $('#file-' + file_index + '-edit-' + edit_index + ' .expand_change').show();
assets/script.js 79) $(this).hide();
assets/script.js 80) }
assets/script.js 81)
assets/script.js 82) /* Handles expanding of the edit */
assets/script.js 83) function expand_edit()
assets/script.js 84) {
assets/script.js 85) file_index = $(this).attr('data-file');
assets/script.js 86) edit_index = $(this).attr('data-edit');
assets/script.js 87)
assets/script.js 88) /* Simply show the edit, and return to the original collapse button */
assets/script.js 89) $('#file-' + file_index + '-edit-' + edit_index + ' .edits').show();
assets/script.js 90) $('#file-' + file_index + '-edit-' + edit_index + ' .collapse_change').show();
assets/script.js 91) $(this).hide();
assets/script.js 92) }
assets/script.js 93)
assets/script.js 94) /* Handles deleting a edit */
assets/script.js 95) function delete_edit()
assets/script.js 96) {
assets/script.js 97) file_index = $(this).attr('data-file');
assets/script.js 98) edit_index = $(this).attr('data-edit');
assets/script.js 99)
assets/script.js 100) /* First we let the data know its deleted. */
assets/script.js 101) $('#file-' + file_index + '-edit-' + edit_index + '-delete').val('1');
assets/script.js 102)
assets/script.js 103) /* Then we hide this header, collapse the edit and show the restore button */
assets/script.js 104) $('#file-' + file_index + '-edit-' + edit_index + ' .edits').hide();
assets/script.js 105) $('#file-' + file_index + '-edit-' + edit_index + ' .restore_change').show();
assets/script.js 106) $(this).hide();
assets/script.js 107)
assets/script.js 108) update_counter();
assets/script.js 109) }
assets/script.js 110)
assets/script.js 111) /* Handles restoring a edit */
assets/script.js 112) function restore_edit()
assets/script.js 113) {
assets/script.js 114) file_index = $(this).attr('data-file');
assets/script.js 115) edit_index = $(this).attr('data-edit');
assets/script.js 116)
assets/script.js 117) /* First we let the data know its deleted. */
assets/script.js 118) $('#file-' + file_index + '-edit-' + edit_index + '-delete').val('0');
assets/script.js 119)
assets/script.js 120) /* Then we hide this header, collapse the edit and show the restore button */
assets/script.js 121) $('#file-' + file_index + '-edit-' + edit_index + ' .edits').show();
assets/script.js 122) $('#file-' + file_index + '-edit-' + edit_index + ' .delete_change').show();
assets/script.js 123) $(this).hide();
assets/script.js 124)
assets/script.js 125) update_counter();
assets/script.js 126) }
assets/script.js 127)
assets/script.js 128) /* Handles collapsing of the file */
assets/script.js 129) function collapse_file()
assets/script.js 130) {
assets/script.js 131) file_index = $(this).attr('data-file');
assets/script.js 132)
assets/script.js 133) /* Simply hide the file, and give a expand button */
assets/script.js 134) $('#file-' + file_index + '-edit_container').hide();
assets/script.js 135) $('#file-' + file_index + ' .expand_file').show();
assets/script.js 136) $(this).hide();
assets/script.js 137) }
assets/script.js 138)
assets/script.js 139) /* Handles expanding of the file */
assets/script.js 140) function expand_file()
assets/script.js 141) {
assets/script.js 142) file_index = $(this).attr('data-file');
assets/script.js 143)
assets/script.js 144) /* Simply show the file, and return to the original collapse button */
assets/script.js 145) $('#file-' + file_index + '-edit_container').show();
assets/script.js 146) $('#file-' + file_index + ' .collapse_file').show();
assets/script.js 147) $(this).hide();
assets/script.js 148) }
assets/script.js 149)
assets/script.js 150) /* Handles deleting a file */
assets/script.js 151) function delete_file()
assets/script.js 152) {
assets/script.js 153) file_index = $(this).attr('data-file');
assets/script.js 154)
assets/script.js 155) /* First we let the data know its deleted. */
assets/script.js 156) $('#file-' + file_index + '-delete').val('1');
assets/script.js 157)
assets/script.js 158) /* Then we hide this header, collapse the edit and show the restore button */
assets/script.js 159) $('#file-' + file_index + '-edit_container').hide();
assets/script.js 160) $('#file-' + file_index + ' .restore_file').show();
assets/script.js 161) $(this).hide();
assets/script.js 162)
assets/script.js 163) update_counter();
assets/script.js 164) }
assets/script.js 165)
assets/script.js 166) /* Handles restoring a file */
assets/script.js 167) function restore_file()
assets/script.js 168) {
assets/script.js 169) file_index = $(this).attr('data-file');
assets/script.js 170)
assets/script.js 171) /* First we let the data know its deleted. */
assets/script.js 172) $('#file-' + file_index + '-delete').val('0');
assets/script.js 173)
assets/script.js 174) /* Then we hide this header, collapse the edit and show the restore button */
|
Couldn't restore a file/ac...
Jeremy D authored 12 years ago
|
assets/script_mod.js 175) $('#file-' + file_index + '-edit_container').show();
|
Initial SMF Package Maker S...
Jeremy D authored 12 years ago
|
assets/script.js 176) $('#file-' + file_index + ' .delete_file').show();
assets/script.js 177) $(this).hide();
assets/script.js 178)
assets/script.js 179) update_counter();
assets/script.js 180) }
assets/script.js 181)
assets/script.js 182) /* This is the nasty guy */
assets/script.js 183) function show_edit_preview()
assets/script.js 184) {
assets/script.js 185) $('#preview_container').show();
assets/script.js 186)
assets/script.js 187) author = $('#basic_info_name').val().replace(/ /g,'_');
assets/script.js 188) name = $('#basic_info_mod').val().replace(/ /g,'_');
assets/script.js 189) version = $('#basic_info_version').val().replace(/ /g,'_');
assets/script.js 190)
assets/script.js 191) preview = '<' + '?xml version="1.0"?' + '>' + "\n" + '\
assets/script.js 192) <!DOCTYPE modification SYSTEM "http://www.simplemachines.org/xml/modification">' + "\n" + '\
assets/script.js 193) <!-- This package was generated by SleePys Modification Maker at http://sleepycode.com -->' + "\n" + '\
assets/script.js 194) <modification xmlns="http://www.simplemachines.org/xml/modification" xmlns:smf="http://www.simplemachines.org/">' + "\n" + '\
assets/script.js 195) <id>' + author + ':' + name + '</id>' + "\n" + '\
assets/script.js 196) <version>' + version + '</version>' + "\n";
assets/script.js 197)
assets/script.js 198) i = 1;
assets/script.js 199) for (i = 1; i < file_count; i++)
assets/script.js 200) {
assets/script.js 201) /* Skip this edit if we deleted it. */
assets/script.js 202) if ($('#file-' + i + '-delete').val() == '1')
assets/script.js 203) {
assets/script.js 204) continue;
assets/script.js 205) }
assets/script.js 206)
assets/script.js 207) /* Find our edit count */
assets/script.js 208) ecount = edit_count[i];
assets/script.js 209)
assets/script.js 210) /* Get the file info */
assets/script.js 211) file_type = $('#file-' + i + '-file_type').val();
assets/script.js 212) file_name = $('#file-' + i + '-file_name').val();
assets/script.js 213) file_fail = $('#file-' + i + '-file_fail').val();
assets/script.js 214)
assets/script.js 215) /* Start off with the file attribute */
assets/script.js 216) preview += "\n" + '\
assets/script.js 217) <file name="' + file_type + '/' + file_name + '"';
assets/script.js 218)
assets/script.js 219) /* We don't need to define the default error type. */
assets/script.js 220) if ($.inArray(file_fail, ["ignore", "skip"]) > -1)
assets/script.js 221) {
assets/script.js 222) preview += ' error="' + file_fail + '"';
assets/script.js 223) }
assets/script.js 224) preview += '>';
assets/script.js 225)
assets/script.js 226) /* Now onto the individual edits we made! */
assets/script.js 227) for (j = 1; j < ecount; j++)
assets/script.js 228) {
assets/script.js 229) /* Skip this edit if we deleted it. */
assets/script.js 230) if ($('#file-' + i + '-edit-' + j + '-delete').val() == '1')
assets/script.js 231) {
assets/script.js 232) continue;
assets/script.js 233) }
assets/script.js 234)
assets/script.js 235) /* Get our edit info */
assets/script.js 236) edit_action = $('#file-' + i + '-edit-' + j + '-action').val();
assets/script.js 237) edit_error = $('#file-' + i + '-edit-' + j + '-error').val();
assets/script.js 238) edit_whitespace = $('#file-' + i + '-edit-' + j + '-action').is(':checked');
assets/script.js 239) edit_search = $('#file-' + i + '-edit-' + j + '-search').val();
assets/script.js 240) edit_replace = $('#file-' + i + '-edit-' + j + '-replace').val();
assets/script.js 241)
assets/script.js 242) /* Start off our editing */
assets/script.js 243) preview += "\n\
assets/script.js 244) <operation";
assets/script.js 245)
assets/script.js 246) /* We only need to add error handling for non default */
assets/script.js 247) if ($.inArray(edit_error, ["ignore", "required"]) > -1)
assets/script.js 248) {
assets/script.js 249) preview += ' error="' + file_fail + '"';
assets/script.js 250) }
assets/script.js 251) preview += '>';
assets/script.js 252)
assets/script.js 253) /* Handle our search action */
assets/script.js 254) if (edit_action == 'end')
assets/script.js 255) {
assets/script.js 256) preview += "\n" + '\
assets/script.js 257) <search position="end"/>';
assets/script.js 258) }
assets/script.js 259) else
assets/script.js 260) {
assets/script.js 261) preview += "\n" + '\
assets/script.js 262) <search position="' + edit_action + '"';
assets/script.js 263)
assets/script.js 264) /* Ignore whitespace issues */
assets/script.js 265) if (edit_whitespace)
assets/script.js 266) {
assets/script.js 267) preview += ' whitespace="loose"';
assets/script.js 268) }
assets/script.js 269)
assets/script.js 270) /* Finally our code. */
assets/script.js 271) preview += '><![CDATA[' + edit_search + ']]></search>';
assets/script.js 272) }
assets/script.js 273)
assets/script.js 274) /* Now our replace/add operation */
assets/script.js 275) preview += "\n" + '\
assets/script.js 276) <add><![CDATA[' + edit_replace + ']]></add>' + "\n" + '\
assets/script.js 277) </operation>';
assets/script.js 278)
assets/script.js 279) }
assets/script.js 280)
assets/script.js 281) /* Close up the file edit */
assets/script.js 282) preview += "\n\
assets/script.js 283) </file>";
assets/script.js 284)
assets/script.js 285) }
assets/script.js 286)
assets/script.js 287) $('#preview').text(preview);
assets/script.js 288) }
assets/script.js 289)
assets/script.js 290) function download_file_generate()
assets/script.js 291) {
assets/script.js 292) show_edit_preview();
assets/script.js 293)
assets/script.js 294) $.generateFile({
|
Made it so we can change t...
Jeremy D authored 12 years ago
|
assets/script_mod.js 295) filename : 'install.xml',
|
Initial SMF Package Maker S...
Jeremy D authored 12 years ago
|
assets/script.js 296) content : $('#preview').text(),
|
Made it so we can change t...
Jeremy D authored 12 years ago
|
assets/script_mod.js 297) script : $('#downloadername').val() + '?download'
|
Initial SMF Package Maker S...
Jeremy D authored 12 years ago
|
assets/script.js 298) });
assets/script.js 299) }
assets/script.js 300)
assets/script.js 301) function download_file_data()
assets/script.js 302) {
assets/script.js 303) show_edit_preview();
assets/script.js 304)
assets/script.js 305) data = $.base64.encode($('#preview').text());
assets/script.js 306)
assets/script.js 307) /* No filename can be specified by a data URI */
|
Made it so we can change t...
Jeremy D authored 12 years ago
|
assets/script_mod.js 308) window.location = 'data:application/octet-stream;charset=utf-8;base64,' + data;
|
Initial SMF Package Maker S...
Jeremy D authored 12 years ago
|
assets/script.js 309) }
assets/script.js 310)
assets/script.js 311) /* Updates our details counters */
assets/script.js 312) function update_counter()
assets/script.js 313) {
assets/script.js 314) temp_file_count = 0;
assets/script.js 315) temp_edit_count = 0;
assets/script.js 316) temp_line_count = 0;
assets/script.js 317)
|
Added Package Info stuff a...
Jeremy D authored 12 years ago
|
assets/script_mod.js 318) /* Because of deleted actions, we can't simply use length */
|