Secciones de la página

seed. htm


HyperText markup language


Árbol de ficheros

Tol

Artículos del sitio

Presentación de Tol

Todos los programas

Simuladores visuales

Sitios que me gustan

Por categorías

Algoritmia

Búsqueda y ordenación

Computación fisiológica

Editorial y edición

Gráficos de datos

Herramientas y utilidades

Hipertexto

Informática forense

Lectura óptica de datos

Metaprogramación

No determinista

Ofimática

Recursión e iteración

Reglas y restricciones

Series y estadística









seed.htm de con-Q.tv

Newsletter AVPPM, noticias de quioscos y del sector de la prensa

HyperText markup language

<!DOCTYPE html PUBLIC
  "-//W3C//DTD XHTML 1.0 Transitional//EN"
  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"[]>
<!-- /////////////////////////////////////////////////////////////////////////
// FILE    : seed.htm
// AUTHOR  : http://www.asolver.com
// PURPOSE : Newsletter AVPPM, noticias de quioscos y del sector de la prensa
////////////////////////////////////////////////////////////////////////// -->
<html xmlns="http://www.w3.org/1999/xhtml" lang="es" xml:lang="es">
<head>
<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1" />

<meta name="ROBOTS"        content="INDEX, FOLLOW" />
<meta name="revisit-after" content="7 days" />
<meta name="rating"        content="GENERAL" />
<meta name="distribution"  content="GLOBAL" />
<meta name="language"      content="spanish" />

<{
  // CtrXxx  Control variables inherit from make.tol
  // xxxXxx  Local variables created here, inside html code
  // XXX.XXX Text macro variables created here, inside html code.

  Set  DEF.KEY = [["Asociación",  "Quiosco", "Quiosquero", "Vendedor",
                   "Profesional", "Prensa",  "Revista",    "Madrid"]];

  Text WIN.TIT = If(And(CtrArt, "Noticia"<:SelPdb[1]->pstCla), // Titulo
  {
    Text pstTit = SelPdb[1]->pstTit; // Solo el titulo del articulo expandido
    TxtTwitterWrap(pstTit, " "+CtrDif)
  },
  {
    Set  lstPst = PdbFirstN(SelPdb, CtrPxT, Real(Set objPst)
                            { objPst->pstTit != "" });

    Set  lstTit = EvalSet(lstPst, Text(Set objPst)
                            { objPst->pstTit+" - " });

    // Para que nunca supere la longitud aceptada de Twitter
    TxtTwitterWrap(SetSum(lstTit), " "+CtrDif)
  });

  Text MET.DES = If(And(CtrArt, "Noticia"<:SelPdb[1]->pstCla), // Descripcion
  {
    // Primer parrafo del resumen, expandido, solo texto y cortado
    Text desPar = TxtBetween2Tag(SelPdb[1]->pstRes, "<p>", "</p>", TRUE);
    Text desExp = PhtExpText(TmePst(desPar), FALSE);
    Text desCls = TxtOutHtmScr(desExp);
    Set  desCut = TxtLineWrap(desCls, CtrCxD, TRUE); // Inicio y resto
    desCut[1]+"..."
  },
  {
    Set  lstPst = PdbFirstN(SelPdb, CtrPxD, Real(Set objPst)
                            { objPst->pstTit != "" });

    Set  lstTit = EvalSet(lstPst, Text(Set objPst)
                            { objPst->pstTit+". " });

    Replace(SetSum(lstTit), Char(34), "'") + CtrDif
  });

  Text MET.KEY = // Keywords
  {
    Set txtSet = EvalSet(SelPdb, Text(Set objPst)
    { // With tags and scripts that will be deleted by Set2TxtKeyword()
      objPst->pstTit+" "+objPst->pstHtm 
    });

    Set2TxtKeyword(txtSet << [[ DEF.KEY ]], 5, FALSE, CtrKxP) // Not ordered
  };

  Text DTE.RED = "<span class="+Q("Dte Pnk")+">&bull;&nbsp;";
  Text DTE.WHI = Replace(DTE.RED, "Pnk", "Whi");
  Text HEA.END = "</h";

  Text TmeEmpty; // Only definitions, no html code
}>

<meta name="description"   content=""<{MET.DES}>" />"
<meta name="keywords"      content=""<{MET.KEY}>" />"

<link rel="icon" href="../favicon.ico" />
<link href='../css/common.css' rel='stylesheet' type='text/css' />

<title><{WIN.TIT}></title>

<script type="text/javascript" src="../src/common.js"></script>

</head>

<body>
<div class="Pag">

<div class="Top">
  <a href="../index.html">
    <img src="../css/header.jpg" alt="Newsletter online de la AVPPM" />
  </a>
</div>

<{
  Set allPst = For(1, Card(SelPdb), Text (Real objPos)
  {
    Set  objPst = SelPdb[objPos];
    
    // Full macro expansion
    Text pstTme = PhtExpText(TmePst(objPst->pstHtm), TRUE);

    // Si es Noticia pone la fecha (CtrDif) al inicio, antes de /hX
    Text dteIns = If(!("Noticia" <: objPst->pstCla), HEA.END,
    {
      // Rojo salvo Destacado en blanco y CtrDif es la fecha en noticias
      If(objPst->pstSta != "D", DTE.RED, DTE.WHI) + 
      PhtSpanishDate(objPst) + "</span>" + HEA.END
    }); 

    Text pstExp = TxtReplaceFirst(pstTme, HEA.END, dteIns);
    
    Real allTxt = Or(And( CtrArt, EQ(objPos, 1)),   // El articulo 1º completo
                     And(!CtrArt, CtrPag=="Post")); // Para revisar ortografia

    // Publicidad tras post 1º, no en pagina clase Noticia que va por email
    Text adsHtm = If(And(EQ(objPos, 1), CtrPag!="Noticia"),
                     AdsRand(CtrAxP), // Inserta publicidad aleatoria
                     "");             // No inserta publicidad


    "\n<div class='Sep'>&nbsp;</div>" +
    "\n<div class='Mid "+objPst->pstSta+"'>" +
    If(allTxt,
    {
      // Escribe articulo completo
      pstExp
    },
    {
      // El resto solo se escribe el resumen expandido
      Text pstRes = TxtOutside2Tag(pstExp,"<!--INI-->",
                                          "<!--END-->"); // Resumen
      Text lnkLbl = "Ver más...";

      Real quoRed = objPst->pstSta != "D"; // Only D is white

      Text lnkBas = "\n  <a href="+Q("../" + objPst->pstFil) + ">" +
                                                      lnkLbl + "</a>";

      Text lnkArt = PhtQuote("<p> "+lnkBas+"</p>", FALSE, quoRed);

      If(Or(pstRes=="", pstRes==pstExp), pstExp, // Si no hay resumen -> todo
         Replace(PhtQuote(pstRes, TRUE, quoRed), "<!--MAS-->", lnkArt))
    }) +
    "\n</div>\n\n" + adsHtm

  });
  Text SetSum(allPst); // Escribe todos los posts
}>

<!--LPD-->

<div class="Sep">&nbsp;</div>
<div class="Fot">
  <p>
    <a href="../index.html"                       >con-Q.tv</a> &nbsp; | &nbsp; 
    <a href="../newsletter.html"                >Newsletter</a> &nbsp; | &nbsp; 
    <a href="#"                                       >Subir &Delta;</a> &nbsp; 
    <a href="http://validator.w3.org/check?uri=referer"           >|</a> &nbsp; 
    <a href="http://www.avppm.es"                    >AVPPM</a> &nbsp; | &nbsp; 
    <a href="../quiosco/advertencia_legal.html">Aviso legal</a> &nbsp; | &nbsp; 
    <a href="../quiosco/mapa.html"                >Índices</a>
    <br /><br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
                &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
                <a href="http://www.blason.es" class="Unk">go</a>
  </p>
</div>
</div>

</body>
</html>

Árbol de ficheros

con-Q.tv construye las páginas del sitio y newsletter Con-Q.tv

  • make.tol proceso principal de generacion del sitio web y la newsletter
  • tol directorios de código Tol
    • cmm funciones comunes
      • txt.tol funciones de textos
      • set.tol funciones de conjuntos
      • fil.tol funciones de ficheros
      • dir.tol funciones directorios
      • tme.tol funciones del macro-expansor de Tol en Html
      • img.tol funciones de imagenes Html
      • ftp.tol para generar mandatos para hacer Ftp
      • xsm.tol para construir sitemaps en Xml
    • app funciones especificas de aplicacion
      • ads.tol funciones de anuncios de publicidad
      • pdb.tol funciones de manejo de los posts de una agenda
      • pht.tol funciones auxiliares para el Html de los post
    • inc.tol para la inclusión de ficheros Tol
  • agenda directorio destinado a la agenda de post
  • web directorio destinado a las páginas web generadas
    • css directorio para ficheros de estilo
      • common.css fichero de estilo Css para las páginas Html
    • seed directorio para ficheros semilla
      • seed.htm semilla de página Html con Tol embebido
      • lopd.htm texto Lopd para insertar en la newsletter de envío por email
    • src directorio para ficheros con código Javascript
      • common.js funciones Javascript para diferentes redes sociales
    • noticia directorio para páginas de noticias
    • quiosco directorio para páginas Html de categorias
      • asamblea.html ejemplo de página de categoría generada automáticamente
    • sitemap.xml mapa completo del sitio web generado en Xml automáticamente
  • presentacion.html vídeo de presentación de la Newsletter de la Avppm
  • con-q_tv.pdf documento resumen de funciones del programa de la newsletter

2015 asolver.com | Aviso legal | XHTML | Δ Θ Ξ | Creative Commons | Mapa y funciones del sitio

Tol