window.onload = function () { $('#subcategory').prop('disabled', true); $('#category').change(function() { fillSubcategory(this.value) }); customizeUploadButton() } function sortCategories(categories) { var sortedCategories = [] for(var key in categories) { sortedCategories.push(categories[key]) } sortedCategories.sort() return sortedCategories } function fillDetectedFilelist(file) { var reader = new FileReader(); fileList = document.querySelectorAll(".detectedFiles ul")[0] fileList.innerHTML = "" reader.onload = function() { autodetectSuccess = false b = new bencode() try { torrentObject = b.decode(reader.result) } catch(err) { } if(torrentObject.info.name) { document.querySelectorAll("input.name")[0].value = torrentObject.info.name } sizeGroup = document.querySelectorAll(".sizeGroup")[0] if(torrentObject.info.pieces.length && torrentObject.info["piece length"]) { sizeGroup.style.display = "" size = (torrentObject.info.pieces.length / 20) * torrentObject.info["piece length"] size = getNextUnit(size) document.querySelectorAll(".detectedSize")[0].innerHTML = ((Math.round(size[0] * 100)) / 100) + " " + size[1] autodetectSuccess = true } else { sizeGroup.style.display = "none" } trackerGroup = document.querySelectorAll(".trackerGroup")[0] if(torrentObject.announce) { trackerGroup.style.display = "" document.querySelectorAll(".detectedTracker")[0].innerHTML = torrentObject.announce autodetectSuccess = true } else { trackerGroup.style.display = "none" } filesGroup = document.querySelectorAll(".filesGroup")[0] if(torrentObject.info.files.length > 0) { autodetectSuccess = true for(var fileIndex = 0; fileIndex < torrentObject.info.files.length; fileIndex++){ newListElement = document.createElement("li") newListElement.innerHTML = torrentObject.info.files[fileIndex].path[0] fileList.appendChild(newListElement) } } var detectInfosGroup = document.querySelectorAll(".detectedInfosGroup")[0] if(autodetectSuccess) { detectInfosGroup.style.display = "block" } else { detectInfosGroup.style.display = "none" } } reader.readAsArrayBuffer(file) } function fillSubcategory(value) { var subSelect = $('#subcategory') subSelect.empty(); subSelect.append($('