Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions .htaccess
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
AuthType Basic
AuthName "Restricted Area"
AuthUserFile /var/www/Podcast-RSS-Editor/.htpasswd
Require valid-user
1 change: 1 addition & 0 deletions .htpasswd
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
admin:$apr1$0kT4lhp/$h8IeA/F7y4eUuBXFPKidj/
12 changes: 8 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,18 +9,22 @@ Started a [design podcast](https://anyway.fm/) couple of years ago, and in the v

# 02. Usage
- Put the XML file you wanna edit in the root and select it in the '**Settings**' panel and then you can edit / add episodes.
- There isn't any authentication or security check so please don't put it on the sever in case shit happens.

# 03. Change Log
# 03. Authentication
- There's a very simple authentication done with `.htaccess`, so all you gotta do is to generate the `.htpasswd` file content [in this site](http://www.htaccesstools.com/htpasswd-generator/) and replace it.
- The parameter **AuthUserFile** of the `.htaccess` file is the path to the `.htpasswd` that **must to be the real path** at all, if needed, change it.
- By default authentication is: user `admin` and password `admin`

# 04. Change Log
- [Feb 3, 2019] Updated the layout compatibility.
- [Jul 27, 2017] Added ‘**Preview**’ function for episode link, image file and audio file.
- [Dec 13, 2016] Added ‘**duplicate**’ and ‘**delete**’ functions.
- [Jul 20, 2016] Added multi-language support: Simplified Chinese, Traditional Chinese, English.

# 04. Alternatives
# 05. Alternatives
- [Itunes podcast XML generator](http://codepen.io/jon-walstedt/pen/jsIup) by Jon Wålstedt
- [Podcast Generator](http://www.podcastgenerator.net/)
- Any Podcast hosting services.

# 05. Credits
# 06. Credits
- Some icons used are from the set [Squid Ink Line Icons](http://thesquid.ink/line-icons/)
31 changes: 31 additions & 0 deletions assets/logout.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@

/*
* This function will try to force browser to request
* login again, but it's not really confiable, so avoid
* to depend entirely on it.
*/
function logout() {

var baseURL = window.location.origin+window.location.pathname;

var xmlhttp;
if (window.XMLHttpRequest) {
xmlhttp = new XMLHttpRequest();
}
// code for IE
else if (window.ActiveXObject) {
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
if (window.ActiveXObject) {
// IE clear HTTP Authentication
document.execCommand("ClearAuthenticationCache");
window.location.href=baseURL;
} else {
xmlhttp.open("GET", baseURL+'assets/logout.js', true, "logout", "logout");
xmlhttp.send("");
xmlhttp.onreadystatechange = function() {
if (xmlhttp.readyState == 4) {window.location.href=baseURL;}
}
}
return false;
}
10 changes: 10 additions & 0 deletions index.php
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,8 @@
<link rel="stylesheet" href="assets/balloon.min.css"/>
<link rel="shortcut icon" href="assets/favicon.png" />
<link href="https://fonts.googleapis.com/css?family=Quattrocento+Sans:400,400i,700,700i" rel="stylesheet">

<script src="assets/logout.js" type="text/javascript"></script>
</head>
<body>
<?php
Expand Down Expand Up @@ -436,6 +438,14 @@ public function addNewItem()
<li><a href="?ep=-3" class="<?php echo($navHighlight3);?>"><svg xmlns="http://www.w3.org/2000/svg" width="60" height="60" viewBox="0 0 60 60">
<path id="settings-2" data-name="settings" d="M351.331,53h-2.662a3,3,0,0,1-2.952-2.463l-0.385-2.123a18.784,18.784,0,0,1-5.044-2.1l-1.781,1.233a3.06,3.06,0,0,1-3.829-.346L332.8,45.322a3,3,0,0,1-.345-3.829l1.233-1.78a18.808,18.808,0,0,1-2.1-5.045l-2.123-.385A3,3,0,0,1,327,31.331V28.669a3,3,0,0,1,2.463-2.951l2.123-.386a18.808,18.808,0,0,1,2.1-5.045l-1.233-1.78a3,3,0,0,1,.345-3.829l1.883-1.882a3.059,3.059,0,0,1,3.828-.346l1.782,1.233a18.794,18.794,0,0,1,5.044-2.1l0.385-2.122A3,3,0,0,1,348.669,7h2.662a3,3,0,0,1,2.952,2.463l0.385,2.123a18.794,18.794,0,0,1,5.044,2.1l1.781-1.233a3.06,3.06,0,0,1,3.829.346l1.883,1.882a3,3,0,0,1,.345,3.829l-1.233,1.78a18.808,18.808,0,0,1,2.1,5.045l2.123,0.385A3,3,0,0,1,373,28.669v2.662a3,3,0,0,1-2.463,2.951l-2.123.386a18.808,18.808,0,0,1-2.1,5.045l1.233,1.78a3,3,0,0,1-.345,3.829L365.322,47.2a2.981,2.981,0,0,1-2.122.879h0a2.986,2.986,0,0,1-1.706-.533l-1.782-1.233a18.784,18.784,0,0,1-5.044,2.1l-0.385,2.122A3,3,0,0,1,351.331,53Zm-11.073-8.879a0.993,0.993,0,0,1,.542.16,16.856,16.856,0,0,0,5.609,2.331,1,1,0,0,1,.773.8l0.5,2.767a1,1,0,0,0,.984.821h2.662a1,1,0,0,0,.984-0.822l0.5-2.767a1,1,0,0,1,.773-0.8,16.856,16.856,0,0,0,5.609-2.331,1,1,0,0,1,1.112.017l2.32,1.606a1.02,1.02,0,0,0,1.276-.115l1.883-1.882a1,1,0,0,0,.114-1.276l-1.606-2.32a1,1,0,0,1-.018-1.111,16.859,16.859,0,0,0,2.331-5.608,1,1,0,0,1,.8-0.774l2.768-.5A1,1,0,0,0,371,31.331V28.669a1,1,0,0,0-.821-0.984l-2.768-.5a1,1,0,0,1-.8-0.774,16.858,16.858,0,0,0-2.331-5.608,1,1,0,0,1,.018-1.111l1.606-2.32a1,1,0,0,0-.114-1.276l-1.883-1.882a1.02,1.02,0,0,0-1.277-.115L360.312,15.7a1,1,0,0,1-1.112.018,16.862,16.862,0,0,0-5.609-2.331,1,1,0,0,1-.773-0.8l-0.5-2.768A1,1,0,0,0,351.331,9h-2.662a1,1,0,0,0-.984.822l-0.5,2.767a1,1,0,0,1-.773.8,16.862,16.862,0,0,0-5.609,2.331,1,1,0,0,1-1.112-.018l-2.32-1.606a1.02,1.02,0,0,0-1.276.115l-1.883,1.882a1,1,0,0,0-.114,1.276l1.606,2.32a1,1,0,0,1,.018,1.111,16.858,16.858,0,0,0-2.331,5.608,1,1,0,0,1-.8.774l-2.768.5a1,1,0,0,0-.821.983v2.662a1,1,0,0,0,.821.984l2.768,0.5a1,1,0,0,1,.8.774,16.859,16.859,0,0,0,2.331,5.608,1,1,0,0,1-.018,1.111l-1.606,2.32a1,1,0,0,0,.114,1.276l1.883,1.882a1.023,1.023,0,0,0,1.277.115l2.319-1.606A1,1,0,0,1,340.258,44.121ZM350,39a9,9,0,1,1,9-9A9.01,9.01,0,0,1,350,39Zm0-16a7,7,0,1,0,7,7A7.008,7.008,0,0,0,350,23Z" transform="translate(-320)"/>
</svg><?php echo($lang[3]);?></a></li>
<li>
<a href="#" class="" onclick="logout();">
<svg aria-hidden="true" focusable="false" data-prefix="fas" data-icon="sign-out-alt" class="svg-inline--fa fa-sign-out-alt fa-w-16" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512">
<path fill="currentColor" d="M497 273L329 441c-15 15-41 4.5-41-17v-96H152c-13.3 0-24-10.7-24-24v-96c0-13.3 10.7-24 24-24h136V88c0-21.4 25.9-32 41-17l168 168c9.3 9.4 9.3 24.6 0 34zM192 436v-40c0-6.6-5.4-12-12-12H96c-17.7 0-32-14.3-32-32V160c0-17.7 14.3-32 32-32h84c6.6 0 12-5.4 12-12V76c0-6.6-5.4-12-12-12H96c-53 0-96 43-96 96v192c0 53 43 96 96 96h84c6.6 0 12-5.4 12-12z"></path>
</svg>
Logout
</a>
</li>
</ul>
<section class="nav-dashboard"><?php echo($navDashboard);?></section>
</nav>
Expand Down
75 changes: 75 additions & 0 deletions language/Portugues - BR.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,75 @@
<?php
$lang[0]='<strong>Podcast</strong> RSS Editor';
$lang[1]='Episódios';
$lang[2]='Dashboard';
$lang[3]='Configurações';
$lang[4]='Dias desde o último Ep.';
$lang[5]='Total Episódios';
$lang[6]='Add novo Episódio';
$lang[7]='Título:';
$lang[8]='Publicado em:';
$lang[9]='Duração:';
$lang[10]='Link:';
$lang[11]='Autor:';
$lang[12]='Capa URL:';
$lang[13]='Áudio URL:';
$lang[14]='Descrição:';
$lang[15]='Dias';
$lang[16]='desde o último episódio, e ciclo de atualização médio é de ';
$lang[17]=' dias.';
$lang[18]='Episódios';
$lang[19]='no total depois de sua primeira exibição <br />';
$lang[20]=' anos atrás.';
$lang[21]='Horas';
$lang[22]='podcasted, que é ';
$lang[23]=' \'O Hobbit\' trilogia combinada.';
$lang[24]='KB';
$lang[25]='por arquivo de RSS, incluindo ';
$lang[26]=' links <br />in shownotes.';
$lang[27]='Pessoas';
$lang[28]='mostrado na lista de autores.<br /> ';
$lang[29]=' é o mais popular.';
$lang[30]='Dom';
$lang[31]='Seg';
$lang[32]='Ter';
$lang[33]='Qua';
$lang[34]='Qui';
$lang[35]='Sex';
$lang[36]='Sab';
$lang[37]='A duração dos últimos 10 episódios vs. média de duração (';
$lang[38]='minutos) de todos os tempos.';
$lang[39]='Selecione o arquivo para editar:';
$lang[40]='E quem sabe trocar o idioma:';
$lang[41]='Salvar';
$lang[42]='Novo episódio';
$lang[43]='Editar Episódio #';
$lang[44]=' ';
$lang[45]='Mês';
$lang[46]='Dia';
$lang[47]='Ano';
$lang[48]='Hora';
$lang[49]='Minuto';
$lang[50]='Segundo';
$lang[51]='HH';
$lang[52]='MM';
$lang[53]='SS';
$lang[54]='Configurações salvas';
$lang[55]='Episódio atualizado';
$lang[56]='Novo episódio criado';
$lang[57]='Você tem certeza de que quer excluir “';
$lang[58]='”?';
$lang[59]='Diga adeus àquele episódio, ele se foi para sempre.';
$lang[60]='Duplicar este episódio';
$lang[61]='Excluir este episódio';
$lang[62]='Dublicado com sucesso';
$lang[63]='Episódios';
$lang[64]='Complete hosts list: ';
$lang[65]=' anos atrás';
$lang[66]=' meses atrás';
$lang[67]=' semanas atrás';
$lang[68]=' dias atrás';
$lang[69]=' horas atrás';
$lang[70]='Publicado';
$lang[71]='Ontem';
$lang[72]='Visualizar';
?>