Ir para conteúdo
marfegte

codigo javascript gerador de lista xml

Recommended Posts

eu tenho um codigo pra gera lista em xml
nao to conseguindo salva o codigo gerado no servidor e deixar ele gravado na tabela no site para editor

https://codepen.io/marfegte/pen/mWXzBG


index.html

<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="pragma" content="no-cache" />
<meta http-equiv="expires" content="0" />
<meta http-equiv="content-type" content="text/html; charset=UTF-8" />
<title>Gerador lista xml</title>
<link rel="stylesheet" type="text/css" media="all" href="generator.css" />
<script src="codigo.js" type="text/javascript"></script>
</head>
<body onload="init()">

		
		<h1><a href="http://playlist-generator.com/"></a>IPTV Gerador Lista xml</h1>
		<noscript><p id="no_javascript">IPTV Gerador Lista xml usado JavaScript</p></noscript>
		<form id="playlistform" action="" onsubmit="return false;">
			<table>
				<thead>
					<tr>
						<th>Titulo</th>
						<th>Link</th>
						<th>Thumbnail</th>
						<th>Fanart</th>
						<th>Info</th>
						
						<th><span class="desc" title="duration (in milliseconds)">Opção</span></th>
					</tr>
				</thead>
				<tbody id="playlist"></tbody>
			</table>
		</form>
		
		<p style="margin-top: 3em;">playlist.xml</p>

		<pre id="playlistcode"></pre>

</body>
</html>

codigo.js

var TYPE_TITLE = 0;
var TYPE_LINK = 1;
var TYPE_THUMBNAIL = 2;
var TYPE_FANART = 3;
var TYPE_INFO = 4;
var COUNT_COLUMNS = 6;

function htmlentities(str) {
	str = str.replace(/&/g, "&amp;");
	str = str.replace(/"/g, "&quot;");
	str = str.replace(/</g, "&lt;");
	str = str.replace(/>/g, "&gt;");
	return str;
}
function nl2br(str) {
	str = str.replace(/\n/g, "<br/>");
	return str;
}
function update() {
	var playlist = document.getElementById("playlist");
	var rows = playlist.getElementsByTagName("tr");	
	var code = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n";
	code += "  \n";	
	for (var index = 0; index < rows.length; index++) {
		var inputFields = rows[index].getElementsByTagName("input");		
		code += "    <item>\n";		
		for (var j = 0; j < inputFields.length; j++) {			
			var type = "";
			var value = inputFields[j].value;			
			switch (j) {
			case TYPE_TITLE:
				type = "title";
				break;
			case TYPE_LINK:
				type = "link";
				break;
			case TYPE_THUMBNAIL:
				type = "thumbnail";
				break;
			case TYPE_FANART:
				type = "fanart";
				break;
			case TYPE_INFO:
				type = "info";
				break;
			
			}
			
			if (type == "link" || value != "") {
				code += "      <" + type + ">" + htmlentities(value) + "</" + type + ">\n";
			}
			
		}		
		code += "    </item>\n";
		code += "    \n";
	}	
	document.getElementById("playlistcode").innerHTML = nl2br(htmlentities(code));
}

function updateTable() {
	$("#results").html('')
 
	
	var playlist = document.getElementById("playlist");
	var rows = playlist.getElementsByTagName("tr");	
	for (var index = 0; index < rows.length; index++) {
		var row = rows[index];
		var cols = row.getElementsByTagName("td");	
		var content = "<a href=\"#\" title=\"adicionar um novo\" onclick=\"addTrack(" + (index + 1) + "); return false;\">Adicionar</a> <a href=\"#\" title=\"remove this track\" onclick=\"removeTrack(" + index + "); return false;\">Apagar</a>";
		cols[cols.length - 1].innerHTML = content;
	}
}
function addTrack(index) {
	var playlist = document.getElementById("playlist");
	var rows = playlist.getElementsByTagName("tr");	
	var newRow = document.createElement("tr");
	for (var i = 0; i < COUNT_COLUMNS; i++) {
		var newColumn = document.createElement("td");		
		if (i < COUNT_COLUMNS - 1) {
			
			var inputField = document.createElement("input");
			inputField.setAttribute("type", "text");
			inputField.onchange = update;
			inputField.onkeyup = update;
			newColumn.appendChild(inputField);
		} else {			
			newColumn.setAttribute("class", "options");
		}		
		newRow.appendChild(newColumn);
	}
	
	if (index == rows.length) {
		playlist.appendChild(newRow);
	} else {
		playlist.insertBefore(newRow, rows[index]);
	}	
	updateTable();
	update();
}
function removeTrack(index) {
	var playlist = document.getElementById("playlist");
	var rows = playlist.getElementsByTagName("tr");
	
	if (rows.length > 1 && window.confirm("Tem certeza que deseja apagar?")) {
		playlist.removeChild(rows[index]);		
		updateTable();
		update();
	}
}

function init() {
	addTrack(0);
	document.getElementById("playlist").getElementsByTagName("tr")[0].getElementsByTagName("input")[0].value = "";
	update();
}

generator.css

body, td {
	font-family: Verdana, Arial, sans-serif;
	font-size: 10pt;
}

a {
	color: #0000ff;
}

a:hover {
	color: #6666ff;
}

#no_javascript {
	background-color: #cc0000;
	color: #ffffff;
	padding: 0.5em;
	border: 2px dashed #000000;
}

h1 {
	font-size: 150%;
	font-weight: bold;
}

h2 {
	margin-top: 1em;
	font-size: 120%;
	font-weight: bold;
}

table {
	width: 100%;
	margin-top: 1em;
}

th {
	font-size: 100%;
	font-weight: bold;
	text-align: center;
	background-color: #ccccff;
	padding: 0.1em 0.3em 0.1em 0.3em;
	border: 1px solid #aaaaff;
}

td {
	padding: 0;
	text-align: center;
	border: 1px solid #660000;
}

td input {
	width: 100%;
	height: 100%;
	border: 0;
	background-color: #ffffff;
}

td input:hover {
	background-color: #eeeeff;
}

td input:focus {
	background-color: #ddddff;
}

#playlistcode {
	background-color: #ccccff;
	padding: 0.3em;
	border: 1px solid #aaaaff;
	font-size: 10pt;
	font-family: "Courier New",Verdana,sans-serif;
}

.desc {
	border-bottom: 
}

.options {
	white-space: nowrap;
	background-color: #ccccff;
	padding: 0.3em;
	font-weight: bold;
	border: 1px solid #aaaaff;
	font-size: 10pt;
	text-align: center;
	font-family: "Verdana,sans-serif;
	
}

 

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora


  • Conteúdo Similar

    • Por Einstein_boladau
      Como eu posso fazer para executar um comando quando o usuário pressionar a tecla "a" ????
      JAVASCRIPT!
    • Por MarceloMarques1993
      Como vão?
       
      Ao criar um templete seja para um blog quer seja para um site, a hospedagem que eu contratar que fornecerá um host para administrar? Teria outra opção? Tipo um host não ligado à hospedagem? Ou um programa ou algo do tipo?
       
      Obrigado!
    • Por MateusFreitas01
      Olá pessoal. Eu desenvolvi um formulário de contato, que envia os dados usando Ajax (direto para o e-mail). Porém, após enviar o formulário, se recarregar página, aparece a mensagem: 
      Tem como desabilitar isso (para qualquer computador)? Se não, acontece outro envio caso apertar em continuar?
       
      Obrigado. 
    • Por DinhoPHP
      Olá! Eu já havia criado uma lista de favoritos como a do zap imóveis, porém não sei porque ela parou de funcionar, ao clicar na setinha, esta lista não exibe os itens em favoritos. Olhe o site do zapimóveis no modo desktop e entenderão melhor.
       
      <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css"> <style> * { margin: 0; padding: 0; box-sizing: border-box } .box-mae { position: relative } .box-mae:before, .box-mae:after { content: ""; display: table; clear: both } .esconde { overflow-y: auto; margin-top: 100px; width: 205px; height: 450px; background-color: #f9f6f7; display: block; position: fixed; right: -180px; border: 1px solid #dcd8cd; box-shadow: 0 0 12px rgba(0,0,0,0.25); border-radius: 5px 0 0 5px; top: 160px; z-index: 1000; transition: 0.5s ease-out; -webkit-transition: 0.5s ease-out; -moz-transition: 0.5s ease-out; -o-transition: 0.5s ease-out; } .mostra { overflow-y: auto; margin-top: 100px; width: 205px; height: 475px; background-color: #f9f6f7; display: block; position: fixed; right: 0px; border: 1px solid #dcd8cd; box-shadow: 0 0 12px rgba(0,0,0,0.25); border-radius: 5px 0 0 5px; top: 160px; z-index: 1000; transition: 0.5s ease-out; -webkit-transition: 0.5s ease-out; -moz-transition: 0.5s ease-out; -o-transition: 0.5s ease-out; } .btn_favorite{ position: absolute; width: 28px; top: 32px; left: 0; } .try_indicator{ width: 28px; height: 103px; margin-top: 125px; background-color: #007aa5; position: fixed; cursor: pointer; } .try_indicator:after{ content: ''; width: 0; height: 0; border-right: 9px solid #fff; border-top: 11px solid transparent; border-bottom: 11px solid transparent; position: absolute; top: 41px; left: 8px; } .try_indicator_open:after{ content: ''; width: 0; height: 0; border-right: 9px solid #fff; border-top: 11px solid transparent; border-bottom: 11px solid transparent; position: absolute; top: 41px; left: 8px; transform: rotateY(180deg); transition: 0.5s ease-out; -webkit-transition: 0.5s ease-out; -moz-transition: 0.5s ease-out; -o-transition: 0.5s ease-out; } .title_content{ text-transform: uppercase; font-size: 1em; display: inline-block; margin-left: 45px; position: fixed; } .title_rot_90{ height: auto !important; overflow: visible !important; padding-top: 12px; padding-bottom: 10px; font-weight: 600; -webkit-transform: rotate(90deg); -ms-transform: rotate(90deg); transform: rotate(90deg); white-space: nowrap; } .content{ margin: 10px; padding-top: 10px; float: right; } .content img{ width: 130px; height: 120px; } #ver_todos{ display: inline-block; position: fixed; top: 714px; right: 18px; width: 180px; text-align: center; background-color: #f9f6f7; transition: linear 1.5s; -webkit-transition: linear 1.5s; -moz-transition: linear 1.5s; -o-transition: linear 1.5s; } #fav_vazio{ background-color: #0794c9; color: #fff; border: 3px double #fff; width: 130px; height: 120px; padding: 10px; font-size: 0.85em; text-align: center; } </style> <script> $(document).ready(function(){ $(".try_indicator").click(function(event){ $("#caixa").addClass("mostra"); $("#heart_cheio").css("display", "block"); $("#heart_vazio").css("display", "none"); $("#fav_vert").css("color", "transparent"); $("#fav_hor").css("display", "block"); $("#ver_todos").css("display", "block"); $(".try_indicator").addClass("try_indicator_open"); }); $("#caixa").mouseleave(function(event){ $("#caixa").removeClass("mostra"); $("#heart_cheio").css("display", "none"); $("#heart_vazio").css("display", "block"); $("#fav_vert").css("color", "black"); $("#fav_hor").css("display", "none"); $("#ver_todos").css("display", "none"); $(".try_indicator").removeClass("try_indicator_open"); }); }); </script> </head> <body> <div id="caixa" class="esconde"> <i id="heart_vazio" class="fa fa-heart-o 1g" aria-hidden="true" style="color: #f26122; display: block; position: fixed; margin-top: 3px; margin-left: 3px; font-size: 18px;"></i> <i id="heart_cheio" class="fa fa-heart" aria-hidden="true" style="color: #f26122; display: none; position: fixed; margin-top: 3px; margin-left: 3px; font-size: 18px;"></i> <div id="fav_hor" class="title_content" style="display: inline-block; width: 132px; background-color: #f9f6f7; transition: 0.5s ease-out;-webkit-transition: 0s ease-out;-moz-transition: 0s ease-out;-o-transition: 0s ease-out;">FAVORITOS (N)</div> <div class="btn_favorite"> <div id="fav_vert" class="title_rot_90" style="display: block; transition: 0s ease-out;-webkit-transition: 0s ease-out;-moz-transition: 0s ease-out;-o-transition: 0s ease-out;">FAVORITOS</div> <div class="try_indicator"> </div> </div> <div class="content"> <div id="fav_vazio"> <?php echo "Clique no ";?><i id="heart_vazio" class="fa fa-heart-o 1g" aria-hidden="true" style="color: black; display: initial;"></i><?php echo utf8_decode(" correspondente ao imóvel do seu interesse para adicioná-lo à favoritos.");?> </div> </div> <div class="content"> <img src="<?php echo $ROOTPATH;?>/media/team/2017/0901/15042944807003.jpg"/> </div> <div class="content"> <img src="<?php echo $ROOTPATH;?>/media/team/2017/0901/15042944807003.jpg"/> </div> <div class="content"> <img src="<?php echo $ROOTPATH;?>/media/team/2017/0901/15042944807003.jpg"/> </div> <div class="content"> <img src="<?php echo $ROOTPATH;?>/media/team/2017/0901/15042944807003.jpg"/> </div> <div class="content"> <img src="<?php echo $ROOTPATH;?>/media/team/2017/0901/15042944807003.jpg"/> </div> <div id="ver_todos" class="title_content"><a href="#" style="color: #f26122 !important;">VER TODOS</a></div> </div>  
    • Por TchescoM
      Olá, amigos...
      estou começando agora nesta área e já tenho uma "pequena" dificuldade
      é o seguinte; 
       
      function addImagem(){
          document.getElementById("img'").innerHTML = "<img src='imagem1.jpg' width='100%' height='100%'/>"

      eu tenho um dropdown com vária imagens dentro, e a função acima, adiciona a imagem escolhida dentro da form "img" abaxio
       
      <form id="img">
      </form>
       
      que fica assim: 
       
      <form id="img">
      <img src='imagem1.jpg' width='100%' height='100%'/>
      </form>
       
      Até aí, tudo certo. 
      A partir daí, preciso enviar essa imagem por email mas infelizmente meu conhecimento não me dá a possibilidade no momento
       
      Alguém poderia me ajudar?
       
       
       
       
       
       
×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.

Este projeto é mantido e patrocinado pelas empresas:
Hospedado por: