Skip to content

Commit

Permalink
Page for downloading Media File from Wiki was added
Browse files Browse the repository at this point in the history
  • Loading branch information
niebert committed Oct 17, 2016
1 parent 7a644be commit e8a19d2
Show file tree
Hide file tree
Showing 4 changed files with 129 additions and 20 deletions.
24 changes: 21 additions & 3 deletions index.html
Original file line number Diff line number Diff line change
Expand Up @@ -65,7 +65,8 @@ <h1>
<button id="bConvert" onclick="setPage(this.id);">Convert</button>
<button id="bEditor" onclick="setPage(this.id);">Editor</button>
<button id="bNew" onclick="setPage(this.id);">New</button>
<button id="bWebInput" onclick="setPage(this.id);">Web-Input</button>
<button id="bWebInput" onclick="setPage(this.id);">Wiki-Download</button>
<button id="bMediaDownload" onclick="setPage(this.id);">Media-Download</button>
<button id="bBibliography" onclick="setPage(this.id);">Bibliography</button>
<button id="bSettings" onclick="setPage(this.id);">Settings</button>
<button id="bTemplates" onclick="setPage(this.id);">Templates</button> &nbsp;
Expand Down Expand Up @@ -154,6 +155,7 @@ <h1>
<option value="markdown">Markdown (pandoc)</option>
<option value="mediawiki">MediaWiki</option>
<option value="audioslides">AudioSlides from PDF</option>
<option value="audioplayer">Add AudioPlayer (Slides)</option>
<option value="beamer">LaTeX Beamer (Slides)</option>
<option value="reveal" selected="selected">RevealJS</option>
<option value="dzslides">DZSlides (Slides)</option>
Expand Down Expand Up @@ -239,6 +241,14 @@ <h1>
</table>
<hr/>
</div>
<div class="apptab" id="bWikiMediaPage" hidden="hidden">
<h3>
Input Editor:
</h3>
<div id="divWikiMediaDownload">
Please download Wiki content first (Web-Input) ....
</div>
</div>
<div class="apptab" id="bEditorPage" hidden="hidden">
<h3>
Input Editor:
Expand Down Expand Up @@ -364,9 +374,17 @@ <h3>
</table>
<hr/>
</div>
<div class="apptab" id="bMediaDownloadPage" hidden="hidden">
<h3>
Media-Download (Wiki):
</h3>
<div id="divMediaWikiDOWNLOAD">
please download Wiki content first, ...
</div>
</div>
<div class="apptab" id="bWebInputPage" hidden="hidden">
<h3>
Web-Download:
Web-Download (Wiki):
<input type="checkbox" name="checkWebInput" id="checkWebInput" onclick="toggleCheck('tableweb',this.checked)" hidden="hidden">
</h3>
<table border="0" cellspacing="30" id="tableweb" class="buttonsweb" >
Expand Down Expand Up @@ -414,7 +432,7 @@ <h3>
<td>
<input type="text" size="55" id="inputURL" value="http://www.gnu.org/software/make/" style="display:none">
<input type="text" size="35" id="inputSERVER" value="en.wikipedia.org" > Path-API: <input type="text" size="15" id="pathAPI" value="/w" ><br>
Media Download: <input type="text" size="35" id="inputMEDIA" value="https://commons.wikimedia.org/wiki/File%3A">
<b>Media Download:</b> <input type="text" size="42" id="inputMEDIA" value="https://commons.wikimedia.org/wiki/File%3A">
<!-- button class="btn btn-primary btn-xs" id="bOpenMediaInBrowser" onclick="openMediaInWindow();">Media URL</button -->

</td>
Expand Down
66 changes: 66 additions & 0 deletions js/cmdpandoc.js
Original file line number Diff line number Diff line change
Expand Up @@ -119,6 +119,23 @@ function executePanDocCMD(pHash) {
vCMD += vCMD_post;
pHash["executeable"] = vPandoc_CMD;
switch (vOutFORMAT) {
case "audioplayer":
//-----CONVERT AUDIOSLIDES-------
var vInputPDF = getInnerHTML("inputFILE");
if (vInFORMAT == "html") {
//alert("Input Format is PDF ");
pHash["savefile"] = "Y";
convertPDF2PNG(vInputPDF,vCount,pHash);
} else {
var vMSG = "No HTML-Input:\n Please select an HTML file as input file!";
vMSG += "\nFile should be a presentation (reveal or DZslides) that contains a <section> tags.";
vMSG += "\nIf you select 16 Slides, copy audio comments per slide 'audio0.mp3', ... 'audio15.png'";
vMSG += "\nto the subdirectory '/audio' in your PanDoc-project. Use e.g. Audacity to create MP3 audio comments for slide.";
alert(vMSG);
};
insertAudioTags(pHash);
copyDemoAudio(pSHash);
break;
case "audioslides":
//-----CONVERT AUDIOSLIDES-------
var vCount = getValueDOM("slidecount")
Expand All @@ -135,6 +152,7 @@ function executePanDocCMD(pHash) {
alert(vMSG);
};
createImageSlide(pHash["outputFILE"],vCount,pHash["template"]);
copyDemoAudio(pHash);
break;
case "latex":
runShellCommand(vCMD,vShellHash);
Expand Down Expand Up @@ -278,6 +296,54 @@ function executePanDocCMD(pHash) {
saveShellScript(vShellHash);
callPandoc(vShellHash);
};

function insertAudioTags(pHash) {
var vInFORMAT = pHash["inputFORMAT"];
var vOutFILE = pHash["outputFILE"];
if (vInFORMAT == "html") {
console.log("Insert Audio-Tag - inputFORMAT='html'");
//copyFile2Editor ("inputEDITOR",pHash["inputFILE"]);
//copyFile2Editor ("outputEDITOR",pHash["inputFILE"]);
fs.readFile(pFilename, 'utf-8', function (err, data) {
write2value("inputEDITOR", data);
data = replaceAudioTag(data);
write2value("outputEDITOR", data);
console.log('Audio Tags in \''+pFilename+'\' inserted!');
});
} else {
alert("ERROR: Insert Audio-Tags not possible for ["+vInFORMAT+"]");
};
};

function replaceAudioTag(pData) {
var vSearch = /(<section[^>]+)/gi;
var vResult;
var vCount = 0;
var vSlideTPL = getFileContent (getMainDir()+vSep+'tpl'+vSep+'audioslides'+vSep+"defaudiotag.html");
var vAudioTag = getFileContent (vSlideTPL);
//alert(vPresentation.substr(0,300));
var vDefSlide = "defslide.html";
var vTagInsert = "";
while (vResult = vSearch.exec(pData)) {
vTagInsert = replaceString(vAudioTag,"___NR___",vCount);
vCount++;
pData = replaceString(pData,vResult[1],vResult[1]+vTagInsert);
};
return pData;
}
function copyDemoAudio(pSHash) {
var vAudioDemo = getMainDir()+vSep+'tpl'+vSep+'audioslides'+vSep+"audiodefault.mp3";
var vProjectDir = getPathFromFilename(pHash["inputFILE"]);
var vSep = getPathSeparator();
var vAudioDir = vProjectDir + vSep +"audio" + vSep;
if (checkFileExists(vAudioDir+"audio0.mp3")) {
copyFile(vAudioDemo,vAudioDir+"audio0.mp3");
};
if (checkFileExists(vAudioDir+"audio1.mp3")) {
copyFile(vAudioDemo,vAudioDir+"audio1.mp3");
};
};

function openConvertedFile() {
var vOutputFile = getInnerHTML("outputFILE");
fs.exists(vOutputFile, function(pExists) {
Expand Down
57 changes: 41 additions & 16 deletions js/createproject.js
Original file line number Diff line number Diff line change
Expand Up @@ -63,22 +63,47 @@ function convertMediaLink4Wiki(pWikiText,pMediaArray) {
};

function downloadWikiMedia (pMediaArray) {
var vURL="https://"+getValueDOM('inputSERVER')+"/wiki/"+getValueDOM('wikiARTICLE');
var vDownloaded = "<b>Download Media Files for URL: <a href='"+vURL+"' target='_blank'>"+vURL+"</a></b>";
var vMediaURL = getValueDOM("inputMEDIA");
vDownloaded +="\n<ul>";
// https://en.wikipedia.org/wiki/My_article#/media/File:My_image.jpg
var vProjectDir = getProjectDir(getValueDOM("inputWEBPROJECT"));
for (var i = 0; i < pMediaArray.length; i++) {
//vDownloaded +="\n("+(i+1)+") "+pMediaArray[i];
vDownloaded +="\n <li>";
vDownloaded += "("+(i+1)+") <a href='"+vMediaURL+pMediaArray[i]+"' target='_blank'>"+pMediaArray[i]+"</a>";
vDownloaded +="\n </li>";
checkMediaFile(vProjectDir,vMediaURL+pMediaArray[i],pMediaArray[i]);
};
vDownloaded +="\n</ul>";
vDownloaded = wrapperHTML(vDownloaded);
saveLogWiki(vProjectDir,vDownloaded);
var vProjectDir = getProjectDir(getValueDOM("inputWEBPROJECT"));
var vMediaURL = getValueDOM("inputMEDIA");
for (var i = 0; i < pMediaArray.length; i++) {
checkMediaFile(vProjectDir,vMediaURL+pMediaArray[i],pMediaArray[i]);
};
createdDownloadMediaDIV(pMediaArray,vMediaURL);
createdDownloadMediaFile(pMediaArray,vMediaURL,vProjectDir);
};

function createdDownloadMediaDIV(pMediaArray,pMediaURL) {
var vURL="https://"+getValueDOM('inputSERVER')+"/wiki/"+getValueDOM('wikiARTICLE');
var vDownloaded = "<hr><b>Download Media Files for URL: <a href='#' onclick=\"openFileInBrowser('"+vURL+"')\">"+vURL+"</a></b>";
vDownloaded +="\n<ul>";
// https://en.wikipedia.org/wiki/My_article#/media/File:My_image.jpg
for (var i = 0; i < pMediaArray.length; i++) {
//vDownloaded +="\n("+(i+1)+") "+pMediaArray[i];
vDownloaded +="\n <li>";
vDownloaded += "("+(i+1)+") <a href='#' onclick=\"openFileInBrowser('"+pMediaURL+pMediaArray[i]+"')\">"+pMediaArray[i]+"</a>";
vDownloaded +="\n </li>";
};
vDownloaded +="\n</ul><hr>";
write2innerHTML("divMediaWikiDOWNLOAD",vDownloaded);
};

function createdDownloadMediaFile(pMediaArray,pMediaURL) {
var vURL="https://"+getValueDOM('inputSERVER')+"/wiki/"+getValueDOM('wikiARTICLE');
var vDownloaded = "<b>Download Media Files for URL: <a href='"+vURL+"' target='_blank'>"+vURL+"</a></b>";
var pMediaURL = getValueDOM("inputMEDIA");
vDownloaded +="\n<ul>";
// https://en.wikipedia.org/wiki/My_article#/media/File:My_image.jpg
var vProjectDir = getProjectDir(getValueDOM("inputWEBPROJECT"));
for (var i = 0; i < pMediaArray.length; i++) {
//vDownloaded +="\n("+(i+1)+") "+pMediaArray[i];
vDownloaded +="\n <li>";
vDownloaded += "("+(i+1)+") <a href='"+pMediaURL+pMediaArray[i]+"' target='_blank'>"+pMediaArray[i]+"</a>";
vDownloaded +="\n </li>";
};
vDownloaded +="\n</ul>";
vDownloaded = wrapperHTML(vDownloaded);
var vProjectDir = getProjectDir(getValueDOM("inputWEBPROJECT"));
saveLogWiki(vProjectDir,vDownloaded);
};

function splitURL(pURL) {
Expand Down
2 changes: 1 addition & 1 deletion js/showhide.js
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
function setPage(pButtonID) {
var vPages = ["bConvert","bNew","bWebInput","bBibliography","bSettings","bEditor","bTemplates"];
var vPages = ["bConvert","bNew","bWebInput","bMediaDownload","bBibliography","bSettings","bEditor","bTemplates"];
//alert("setPage for ID="+pButtonID+" vPages.length="+vPages.length);
var i=0;
for (i=0;i<vPages.length;i++) {
Expand Down

0 comments on commit e8a19d2

Please sign in to comment.