<% Response.Charset = "ISO-8859-1" %> <% function formatoTitulo (cual_titulo) dim el_titulo el_titulo = "" if cual_titulo <> "" then el_titulo = cual_titulo el_titulo = replace(el_titulo, ".", "") el_titulo = replace(el_titulo, "-", "_") el_titulo = replace(el_titulo, chr(34), "") el_titulo = replace(el_titulo, """, "") el_titulo = replace(el_titulo, "”","") el_titulo = replace(el_titulo, "“","") el_titulo = replace(el_titulo, "?", "") el_titulo = Replace(el_titulo, """, "") el_titulo = Replace(el_titulo, "á", "á") el_titulo = Replace(el_titulo, "é", "é") el_titulo = Replace(el_titulo, "í", "í") el_titulo = Replace(el_titulo, "ó", "ó") el_titulo = Replace(el_titulo, "ú", "ú") el_titulo = Replace(el_titulo, "Á", "Á") el_titulo = Replace(el_titulo, "É", "É") el_titulo = Replace(el_titulo, "Í", "Í") el_titulo = Replace(el_titulo, "Ó", "Ó") el_titulo = Replace(el_titulo, "Ú", "Ú") el_titulo = Replace(el_titulo, "ü", "ü") el_titulo = Replace(el_titulo, "Ü", "Ü") el_titulo = Replace(el_titulo, "ñ", "ñ") el_titulo = Replace(el_titulo, "Ñ", "Ñ") el_titulo = Replace(el_titulo, "á", "a") el_titulo = Replace(el_titulo, "é", "e") el_titulo = Replace(el_titulo, "í", "i") el_titulo = Replace(el_titulo, "ó", "o") el_titulo = Replace(el_titulo, "ú", "u") el_titulo = Replace(el_titulo, "Á", "A") el_titulo = Replace(el_titulo, "É", "E") el_titulo = Replace(el_titulo, "Í", "I") el_titulo = Replace(el_titulo, "Ó", "O") el_titulo = Replace(el_titulo, "Ú", "U") el_titulo = Replace(el_titulo, "ü", "u") el_titulo = Replace(el_titulo, "Ü", "U") el_titulo = Replace(el_titulo, "ñ", "n") el_titulo = Replace(el_titulo, "Ñ", "N") el_titulo = replace(el_titulo, ")", "") el_titulo = replace(el_titulo, "(", "") el_titulo = replace(el_titulo, "]", "") el_titulo = replace(el_titulo, "[", "") el_titulo = replace(el_titulo, "?", "") el_titulo = replace(el_titulo, "¿", "") el_titulo = replace(el_titulo, "!", "") el_titulo = replace(el_titulo, "¡", "") el_titulo = replace(el_titulo, "$", "") el_titulo = replace(el_titulo, ";", "") el_titulo = replace(el_titulo, "#", "") el_titulo = replace(el_titulo, "+", "") el_titulo = replace(el_titulo, ",", "") el_titulo = replace(el_titulo, ":", "") el_titulo = replace(el_titulo, "'", "") el_titulo = replace(el_titulo, " ", "-") el_titulo = replace(el_titulo, "%", "") el_titulo = replace(el_titulo, "|", "") el_titulo = replace(el_titulo, "/", "") el_titulo = replace(el_titulo, "&", "i") el_titulo = replace(el_titulo, "ª", "") el_titulo = replace(el_titulo, "°", "") el_titulo = replace(el_titulo, "--", "-") el_titulo = replace(el_titulo, "__", "-") end if formatoTitulo = el_titulo end function ' funcion para convertir la fecha function fecha_rss(f,h) 'Devuelve la fecha en este formato: "Tue, 20 Nov 07 16:14:32 +0100" dim dias(6) dias(0)="Sun" dias(1)="Mon" dias(2)="Tue" dias(3)="Wed" dias(4)="Thu" dias(5)="Fri" dias(6)="Sat" dim fecha,temp fecha=dias(weekday(f)-1) & ", " & day(f) & " " & mes_texto_eng(month(f)) & " " & year(f) & " " temp=hour(h) if len(temp)=1 then temp="0" & temp fecha=fecha & temp & ":" temp=minute(h) if len(temp)=1 then temp="0" & temp fecha=fecha & temp & ":" temp=second(h) if len(temp)=1 then temp="0" & temp fecha=fecha & temp & " -0200" fecha_rss=fecha end function 'Y esta es la función mes_texto_eng, que simplemente recibe el número del mes y devuelve una cadena con el mes correspondiente en inglés: function mes_texto_eng(mes) dim meses(12) meses(0)="-" meses(1)="Jan" meses(2)="Feb" meses(3)="Mar" meses(4)="Apr" meses(5)="May" meses(6)="Jun" meses(7)="Jul" meses(8)="Aug" meses(9)="Sep" meses(10)="Oct" meses(11)="Nov" meses(12)="Dec" if (mes>12) then mes=0 mes_texto_eng=meses(mes) end function Function RemoveHTML( strText ) Dim RegEx Set RegEx = New RegExp RegEx.Pattern = "<[^>]*>" RegEx.Global = True strText = Replace(strText, chr(10), "") strText = Replace(strText, chr(13), "") strText = Replace(strText, " ", chr(32)) RemoveHTML = RegEx.Replace(strText, "") End Function %> <% 'Creamos la conexión con la Base de Datos dim rsNotas set rsnotas = server.CreateObject("ADODB.recordset") rsNotas.ActiveConnection = application("conexion_sql")' & session("nombre_archivo") & ".mdb" 'Montamos la sentencia SQL, con las 25 primeras noticias rsNotas.source = "select notas.id, notas.titulo, notas.bajada, notas.fecha, notas.hora, notas.texto, notas.id_seccion from notas order by notas.id desc limit 25" rsNotas.open dim autor dim titulo dim bajada dim cual_descripcion 'Escribimos el código xml Response.ContentType = "text/xml" response.write "" response.write "" response.write "" response.write "" & application("titulo") & "" response.write "" & application("dominio") & "" response.write "" & Server.HTMLencode(application("slogan")) & "" response.write "en-US" dim la_bajada la_bajada = "" dim el_texto el_texto = "" 'Montamos el bucle do while not rsNotas.eof la_bajada = trim(rsnotas.fields("bajada")) el_texto = trim(rsnotas.fields("texto")) if la_bajada <> "" then cual_descripcion = RemoveHTML(la_bajada) else cual_descripcion = trim(RemoveHTML(el_texto)) cual_descripcion = Mid(cual_descripcion, 1, instr(cual_descripcion, ".")) 'cual_descripcion = cual_descripcion & "..." end if titulo = trim(rsnotas.fields("titulo")) titulo = replace(titulo, """, chr(34)) titulo = replace(titulo, """, chr(34)) 'titulo = replace(titulo, "&", "&") 'titulo = Server.HTMLencode(trim(rsnotas.fields("titulo"))) 'autor = rsnotas.fields("autor") 'bajada = Server.HTMLencode(trim(rsnotas.fields("bajada"))) bajada = Server.HTMLencode(cual_descripcion) response.write "" 'escribimos el nodo XML response.write "" & titulo & "" response.write "" & application("dominio") & "/" & formatotitulo(trim(rsnotas.fields("titulo"))) & "-" & rsnotas.fields("id") & "" response.write "" response.write "" & application("dominio") & "/" & formatotitulo(trim(rsnotas.fields("titulo"))) & "-" & rsnotas.fields("id") & ""' response.write "" & autor & "" ' response.write "" & autor & "" response.write "" & fecha_rss(cdate(rsnotas.fields("fecha")), cdate(rsnotas.fields("hora"))) & "" response.write "" & fecha_rss(cdate(rsnotas.fields("fecha")), cdate(rsnotas.fields("hora"))) & "" response.write "" 'nos movemos al siguiente registro rsnotas.MoveNext loop response.write "" response.write "" 'Cerramos y limpiamos los objetos rsnotas.Close set rsnotas = nothing %>