lunes, 23 de abril de 2012

, ,

Microdatos Schema en plantillas Blogger – Promotional Code – Donate – School

Hace un par de días estaba creando un blog para unas pruebas, cuando me percaté de que en la plantilla aparecíanmetadatos (Rich Snippets) de los que carecía mi modificada plantilla. Parece pues que las nuevas sí los llevan y son los de aquel estándarque vimos hace tiempo y que se llamabaSchema.

Estos microdatos (también microformatos) contienen información no visible pero de interés para los buscadores: el título de la entrada, la descripción o sumario, la miniatura de imagen que nos gustaría mostrar, etc. y son los que aparecen junto a cada resultado de búsqueda y que Google llamafragmentos enriquecidos. Su finalidad es mostrar a los usuarios por qué la página es relevante para su consulta.


En esta página deHerramientas para webmasters de Google amplían más la información sobre este concepto:

Si Google comprende el contenido de las páginas de tu sitio, podemos crear fragmentos enriquecidos con información detallada que sirva de ayuda para consultas específicas de los usuarios. Por ejemplo, el fragmento de la página de una receta podría mostrar el tiempo total de preparación, una foto y la valoración de la receta, el de un restaurante podría mostrar la valoración media y el intervalo de precios y el de un álbum musical podría incluir una lista de canciones con enlaces para reproducirlas. Estos fragmentos enriquecidos ayudan a los usuarios a saber si un sitio es relevante para su búsqueda y pueden aumentar el número de visitas que reciben las páginas de ese sitio.

Las marcas correspondientes vienen como atributos con nombresitemscope,itemtype eitemprop. Los dos primeros son los que indican que se van a utilizar estos microdatos y el tipo de web de la que se van a extraer.

En este caso el que se usa es el llamadoBlogPostingy que tiene unas propiedades (itemprop) adaptadas a las características de este tipo de sitios. En el enlace podéis ver toda la nomenclatura utilizada y la descripción de cada tipo de elemento.


Pero lo que más nos interesa a nosotros una vez que sabemos para qué sirve, es saber dónde y cómo introduce Blogger esto, para nosotros hacer lo propio. Ellos son losideólogos de esos fragmentos y al mismo tiempo los promotores de nuestra plataforma, así que supongo que algo sabrán sobre el tema y que convendrá hacerles caso.

Voy a reproducir las líneas enteras dónde encontré microdatos para tenerlas de guía y así saber dónde los tenemos que insertar. Las líneas no son consecutivas pero para que las encontréis más fácil, las he agrupado por cercanía entre ellas.


En elincludable id='post' var='post' aparecen las primeras, el que define el tipo de página (blog), el título de cada entrada como nombre del elemento y el contenido de la entrada comoarticleBody (cuerpo del artículo):

div class='post-hentry'itemscope='itemscope' itemtype='http://schema.org/BlogPosting'

h3 class='post title entry title'itemprop='name'

div class='post body entry content' expr:id='"post body-" + data:post.id'itemprop='articleBody'

En la parte de la plantilla destinada a móviles (id='mobile-post' var='post') aparecen casi de idéntica manera, aunque incluyen también una marca para el autor, otra para la url y otra para la fecha de publicación.

div class='post hentry uncustomized-post-template'itemscope='itemscope' itemtype='http://schema.org/BlogPosting'

h3 class='post-title entry-title'itemprop='name'

div class='post-body entry-content' expr:id='"post-body-" + data:post.id'itemprop='articleBody'

a expr:href='data:post.authorProfileUrl'itemprop='author' rel='author' title='author profile'

a class='timestamp-link' expr:href='data:post.url'itemprop='url' rel='bookmark' title='permanent link'abbr class='published' expr:title='data:post.timestampISO8601' itemprop='datePublished'


En la zonaid='mobile-index-post' está la última:

h3 class='mobile-index-title entry-title'itemprop='name'

Una vez incluidos estos nuevos trozos en vuestra plantilla, podéis comprobar el resultado introduciendo la dirección de cualquier página en esta herramienta deGoogle Webmasters.

Las imágenes de esta entrada fueron obtenidas deDigital Organics yGoogle Webmasters Tools.

WORLD TRADE CENTER FOOTAGE CAR INSURANCE QUOTES PA Casino Insurance Companies cheaper insurance companies student loan consolidation program Hire php developers DONATE YOUR CAR FOR MONEY CHEAP DOMAIN REGISTRATION HOSTING Psd to WordPress Php programmers for hire Dallas mesothelioma attorneys data recovery raid Casino reviews Online casino Webex Costs philadelphia mesothelioma lawyer Computer science classes online Live casino Social media examiner DUI lawyer CAR DONATE mesothelioma attorney assistance Mobile casino car insurance companies Donate Old Cars to Charity Hire php programmers CAR INSURANCE QUOTES COLORADO best accident attorneys DONATING USED CARS TO CHARITY Car Insurance Quotes MN BETTER CONFERENCING CALLS DAYTON FREIGHT LINES Best Seo company car insurance quotes mn Nunavut Culture Dayton Freight Lines STRUCTURED ANNUITY SETTLEMENT cash out annuity Php programmers attorney lawyer mesothelioma structure settlements Make money online Australia criminal defense federal lawyer Online Christmas cards Car Insurance Quotes Colorado Email bulk service Car Insurance Quotes Utah lease management software Low Credit Line Credit Cards car accident lawyer in san diego Criminal lawyer structured annuity settlement Holland Michigan College Donate Cars Illinois DONATE A CAR IN MARYLAND Service business software offshore accident lawyer Html email phd in counseling education auto insurance yuba city ca Photo Christmas cards Personal Injury Law Firm Dwi lawyer workplace accident attorney lawsuit mesothelioma Cheap Car Insurance in Virginia Car Insurance Companies holland michigan college mesothelioma suit Bankruptcy lawyer how to donate a car in california accident lawyers in los angeles pharmacist jobs in chicago Donate Car to Charity California HARDDRIVE DATA RECOVERY SERVICES Online College Course Donate Cars in MA PHD on Counseling Education auto accident lawyer san francisco Criminal defense lawyer car crash attorneys mesothelioma attorney directory Tech school Hire php developer LIFE INSURANCE CO LINCOLN state of california car insurance Cheap Domain Registration Hosting Best social media platforms for business Auto Accident Attorney google adsense mesothelioma ct wisconsin mesothelioma attorney Asbestos Lawyers Asbestos Lung Cancer ONLINE MOTOR INSURANCE QUOTES CHEAP CAR INSURANCE FOR LADIES Neuson How to Donate A Car in California forensics online course chicago hair laser removal Life insurance co Lincoln compare small business phone systems Seo companies firm law mesothelioma Learning adobe illustrator lawyers accidents Online Stock Trading Psychic for Free New social media platforms mesothelioma litigation Business finance group WebEx costs personal accident attorney Virtual Data Rooms mesothelioma attorneys Social media platforms Sell Annuity Payment Social media platforms for business Custom WordPress theme designer low credit line credit cards Seo services selling annuity payments for cash Mortgage adviser Seo company Register Free Domains Business management software Best social media platforms mesothelioma information Proud Italian cook motor insurance quotes Car insurance in South Dakota buy gift card mesothelioma trial attorney mesothelioma settlements semi truck accident lawyers futuristic architecture PAPERPORT PROMOTIONAL CODE Social media campaigns los angeles auto accident attorneys DONATE YOUR CAR FOR KIDS donating used cars to charity Custom Christmas cards mesothelioma claims motorcycle accident lawyer san diego domain name yahoo Car Insurance Quotes PA Dallas Mesothelioma Attorneys annuity payment adverse credit remortgage WordPress themes for designers Cheap Car Insurance for Ladies WordPress hosting windows phone for business NUNAVUT CULTURE Social media management better conferencing calls Christmas cards Auto Mobile Insurance Quote injury lawyers Online Classes WordPress theme designers NEUSON ROYALTY FREE IMAGES STOCK Car Insurance Quotes structured settlement sell Cheap Auto Insurance in VA Psd to html Social media strategies Italian cooking school See more at http//wwwginfostopnet/ car accident lawyers Massage school Dallas Texas Adobe illustrator classes orlando criminal attorney Structures Annuity Settlement Social media tools Mesothelioma Law Firm Forensics Online Course Donate a Car in Maryland illinois law lemon baltimore mesothelioma attorneys mesotheliama personal injury solicitor Donate Car for Tax Credit Donate Your Car Sacramento Donate your car for kids asbestos mesothelioma lawsuit Donate Your Car for Kids Paperport Promotional Code harddrive data recovery services mesothelioma lawyer dallas Auto Mobile Shipping Quote Annuity Settlements mesothelioma drug accident car florida lawyer EMAIL BULK SERVICE st louis mesothelioma attorney best structured settlement companies federal criminal defense attorney Motor Replacements mesothelioma attorney florida Hard drive Data Recovery Services mesothelioma attorney illinois mesothelioma lawyer texas mesotheolima Donating a Car in Maryland domain yahoo Criminal Defense Attorneys Florida Best Criminal Lawyers in Arizona

viernes, 20 de abril de 2012

,

Cambio de tamaño en la imagen de las páginas Facebook – Platform – Dominios – Seguro

Puede que lo vieras o quizás te pasó desapercibido por venir junto con el resumen semanal de datos, pero si fue lo segundo, ese precioso montaje que hiciste para el banner principal de tu página en Facebook, posiblemente se desbarajuste el próximo día 26 de Abril. Lo comunicaron vía e-mail el pasado jueves:

facebook
Hola:
El 26 de abril cambiaremos el tamaño de la foto del perfil de las páginas. Te informamos de este cambio con antelación para que puedas actualizar tu foto ese día. Las nuevas fotos tendrán 160 x 160 píxeles y estarán situadas a 23 píxeles del margen izquierdo y 210 píxeles del borde superior de la página.


En los perfiles personales ya se ha visto ese cambio y la nota anterior es para avisar que las páginas (fan pages) serán las siguientes. Realmente lo único que cambiará será el tamaño de la imagen pequeña que aparece en la zona inferior izquierda, pero si te salió la vena creativa en su momento e hiciste algo del estilo de lo que crearonestos tipos, es posible que ahora tengas que reestructurar todo.


Lo cierto es que posiblemente habrá que esperar a esa fecha y entonces realizar los cambios que sean oportunos, porque entre lo que han hecho con los perfiles personales y lo que anuncian que van a hacer con las páginas, algo no cuadra.


Como decía, en los primeros los cambios ya son visibles, pero si bien la distancia a la izquierda es la que comentan, la que hay hasta el borde superior de la página es mayor. En concreto 232px. Si quisieron decir hasta el borde bajo la barra de herramientas pues entonces es inferior (192px).



Esta es la captura de una página tal y como se ve ahora por si queréis intentar anticiparos al cambio. El recuadro con marcador amarillo representa la nueva posición siguiendo al pie de la letra los datos del aviso. Aquí se muestra reducida pero pinchando en ella la podréis ver a tamaño real.


También podéis preparar una segunda versión con ese cuadro algo más abajo por si no la consideran. Esta mide 38px. Y ahora que me doy cuenta, en la captura del perfil personal erré y consideré la barra de 40px, pero perdonadme que no la cambie, ya que la que interesa es la segunda y esa está bien.

structured settlements annuities Social media platforms for business semi truck accident lawyers Hire php developers donate car for tax credit Mobile casino federal criminal defense attorney accident lawyers in los angeles Learning adobe illustrator Business management software Home Phone Internet Bundle futuristic architecture Html email selling my structured settlement MESOTHELIOMA LAW FIRM Social media tools supportpeachtreecom structured settlement brokers mesothelioma help Casino Psd to WordPress truck accident attorney texas Online casino Best social media platforms Gas/Electricity Tech school Online Stock Trading houston tx auto insurance Donate a car in Maryland Php programmers Make money online Australia utah mesothelioma lawyer Best Seo company Hire php developer anti spam appliance cheaper insurance companies yahoo web hosting motor insurance quotes harddrive data recovery services Christmas cards Data Recovery Raid Low credit line credit cards Car Insurance Quotes PA Massage school Dallas Texas personal injury attorney springfield mo Home phone internet bundle car insurance in south dakota Personal Injury Lawyer los angeles auto accident attorneys Live casino Seo services Casino reviews Donate Old Cars to Charity Best social media platforms for business personal injury lawyer sarasota fl Criminal lawyer caraccidentlawyer Bankruptcy lawyer domains yahoo mesothelioma att call conference st louis mesothelioma attorney CAR INSURANCE IN SOUTH DAKOTA BEST CRIMINAL LAWYER IN ARIZONA DUI lawyer CHEAP DOMAIN REGISTRATION HOSTING Hire php programmers Donate Cars Illinois Dwi lawyer DONATE YOUR CAR FOR MONEY Sell Annuity Payment fortis health insurance temporary Dedicated Hosting Dedicated Server Hosting motorcycle accident attorney chicago colorado mesothelioma lawyers Holland Michigan College Service business software donating used cars to charity PHD on Counseling Education structured annuity settlement Criminal defense lawyer Php programmers for hire car accident lawyers los angeles WordPress themes for designers car insurance quotes Cheap car insurance in Virginia Seo companies Adobe illustrator classes Donate Cars in MA Car insurance in South Dakota Computer science classes online Online College Course illinois law lemon Donate Your Car Sacramento MET AUTO Structures Annuity Settlement mesothelioma cases buying an annuity calculator mesothelioma law suit los angeles motorcycle accident lawyer Donating a car in Maryland structured settlement purchasers Seo company Donate Car to Charity California Auto Mobile Insurance Quote Car Donate New social media platforms workers compensation lawyer los angeles AUTOMOBILE ACCIDENT ATTORNEY CHEAP CAR INSURANCE IN VIRGINIA Business finance group Paperport Promotional Code car insurance companies Donate cars in ma mesothelioma attorney california Custom WordPress theme designer google adsense HARDDRIVE DATA RECOVERY SERVICES primary pulmonary hypertension offshore accident lawyer mesothelioma settlements amounts Cheap Domain Registration Hosting selling a structured settlement massage school dallas texas MORTGAGE ADVISER Cheap Car Insurance in Virginia michigan motorcycle accident lawyer Online Classes business voice mail service World Trade Center Footage Car insurance quotes MN Cheap Car Insurance for Ladies cash out annuity alcohol rehab center in florida MOTOR REPLACEMENTS Car Insurance Quotes MN Online Christmas cards Nunavut Culture Custom Christmas cards life insurance quotes HOLLAND MICHIGAN COLLEGE Photo Christmas cards Donate old cars to charity dallas mesothelioma lawyer Auto Mobile Shipping Quote car insurance quotes pa mesotheloma motorcycle accident lawyer san francisco WordPress hosting mesothelioma charities Social media examiner Social media management personal injury firm WEBEX COSTS Social media platforms HOW TO DONATE A CAR IN CALIFORNIA Motor Replacements structured settlement investments Met Auto Proud Italian cook Psd to html Criminal Defense Attorneys Florida accident attorney in los angeles ROYALTY FREE IMAGES STOCK Italian cooking school Business VOIP Solutions WordPress theme designers Social media strategies mesothelioma lawyer texas Social media campaigns Mesothelioma Law Firm motorcycle lawyer los angeles Massage School Dallas Texas meso lawyer bus accident attorneys LOW CREDIT LINE CREDIT CARDS Asbestos Lung Cancer new york mesothelioma law firm Donate Car for Tax Credit refinance with bad credit boca raton personal injury attorney SELL ANNUITY PAYMENT Donate car to charity California How to Donate A Car in California structured settlement annuity companies Donate Your Car for Kids Asbestos Lawyers mesothelioma lawyer chicago Dayton freight lines Car Insurance Quotes Colorado mesothelioma symptoms Annuity Settlements ASBESTOS LAWYERS what is structured settlement Dayton Freight Lines Hard drive Data Recovery Services See more at http//wwwginfostopnet/ Donating Used Cars to Charity Donate a Car in Maryland Life Insurance Co Lincoln Online Criminal Justice Degree Donating a Car in Maryland adverse credit remortgage Automobile Accident Attorney ONLINECLASSES Best Criminal Lawyers in Arizona Car Insurance Quotes Utah How to donate a car in California asbestos mesothelioma lawsuit philadelphia mesothelioma lawyer

Ajustando (de nuevo) el título y la descripción en Blogger – Settlement

No hace mucho comentábamos la novedad de Blogger que permitía introducir desde elEscritorio el contenido de la etiquetameta correspondiente a ladescripción del blog, algo que resulta bastante interesante de cara a forzar lo que los buscadores encuentran y muestran sobre nuestros sitios.

Pues bien... ayer me avisóFelipe OI de que el uso de la etiquetameta expr:content='data:blog.metaDescription' name='description'/ estaba provocando que esa información apareciera duplicada en nuestras páginas.

Esto no es algo grave, pues sólo una de ellas será tomada por el buscador de turno y como son exactamente iguales, lo mismo nos da que escoja una que otra. Sin embargo podemos hacer las cosas bien, así que vamos a ello y de paso volvemos a ver lo de lostitle's.


Reparaciones en Blogger
El problema por así llamarlo, está en elinclude característico de Blogger que va al principio de todos sus blogs en la formab:include data='blog' name='all-head-content'/. Ahora, después de siglos viéndolo, descubro parcialmente lo que hace y que simplemente es insertar durante la carga de nuestro blog una serie de encabezamientos. Esto es algo que ahora me parece evidente tras fijarme un poco más en elname.

Pues el asunto es que no sé desde cuándo, pero entre estos encabezamientos automáticos también se incluye ahora la descripción del blog. Siempre que la hayamos activado previamente mediante aquella nueva opción que comentaba al principio, claro. Por tanto, si también tenemos ladata:blog.metaDescription, dicha descripción se duplica... inútilmente.


Con condicionales podemos hacer distintos giros para mostrar una información u otra según el tipo de página en el que estemos o incluso discriminando si tenemos esa descripción grabada en un post o no. Pensad que los que llevamos un tiempo con el blog no disponíamos de esa meta-descripción entonces y que ahora no es cuestión de ponerse a editar uno por unotodos los posts para incluirla. Mejor que se haga en automático aunque el resultado no sea el óptimo

En este tipo de cosas hay diversas opiniones y cada cual tiene unas necesidades o ganas de currar distintas. Aclaro esto porque un servidor ha escogido la opción que le parece más efectiva con el menor trabajo posible y que es la que sigue.


Un blog sin modificar tiene justo antes de la apertura deskinsólo un par de líneas:

b:include data='blog' name='all-head-content'/
titledata:blog.pageTitle//title

b:skin![CDATA[/*


Ahí va lo de las cabeceras automáticas, el título de cada página -lo que saldrá en la pestaña del navegador- y listo. Observaréis que ya no vienedata:blog.metaDescription y eso que veis es suficiente para funcionar sin problemas. Pero esta combinación podría ser mejor:

b:include data='blog' name='all-head-content'/

b:if cond='data:blog.url != data:blog.homepageUrl'
titledata:blog.pageName/: data:blog.title//title
b:else/
titledata:blog.pageTitle//title
/b:if

b:if cond='data:blog.metaDescription'
b:else/
meta expr:content='data:blog.pageName+ "texto_corto"' name='description'/
/b:if


En primer lugar seguimos teniendo elall-head-content, pues además de la descripción, también inserta otras cosas convenientes por una parte y necesarias por otra.

Luego tenemos una condición para distinguir distintos títulos según el tipo de página y unavariable data para cada caso. Realmente sólo diferenciamos la página principal del resto pero creo es suficiente como vereis. Los resultados con esa estructura serán los siguientes (entre paréntesis un ejemplo con este blog):

  • Página principal: Nombre del blog (Oloblogger)
  • Página etiquetas: Etiqueta: Nombre del blog (Recursos: Oloblogger)
  • Navegación recientes/antiguas: : Nombre del blog (: Oloblogger)
  • Página estática: Título página: Nombre del blog (Sobre este blog: Oloblogger)
  • Entrada: Título de la entrada: Nombre del blog (Ajustando el título en Blogger: Oloblogger)


Por último está lo de la descripción, para la cual sólo distinguimos dos casos. Entiendo que previamente hemos activado la descripción desde elEscritorio(ver cómo). Si hay una descripción en la entrada, se muestra. De lo contrario utilizamos el nombre de la página (data:blog.pageName) más un pequeño texto a nuestro gusto. Esto último es opcional.

Y el resultado sería:

  • Página principal: La descripción genérica grabada
  • Página etiquetas:La descripción genérica grabada
  • Navegación recientes/antiguas: : La descripción genérica grabada
  • Página estática: Título de la página
  • Entrada: Descripción particular del post o Título de página si no se ha grabado descripción

Ycomo proponía Felipe, se puede aprovechar que estamos en esa parte del código para añadir dentro de esos condicionales las correspondientes metaetiquetas de Facebook.


meta expr:content='data:blog.metaDescription' property='og:description'/

meta expr:content='data:blog.pageName+ "texto_corto"' property='og:description'/

Meta

Hire php developers Hard drive data recovery services MET AUTO Criminal lawyer DUI lawyer REGISTER FREE DOMAINS Service business software Futuristic architecture Casino WordPress hosting Donating a Car in Maryland structured settlement brokers Online Motor Insurance Quotes MESOTHELIOMA LAW FIRM structured settlemen Online casino CHEAP CAR INSURANCE IN VIRGINIA Tech school Donate Car to Charity California Social media campaigns Make money online Australia Html email florida car insurance company lease management software New social media platforms Email Bulk Service Automobile Accident Attorney Criminal defense lawyer EMAIL BULK SERVICE FUTURISTIC ARCHITECTURE Social media tools mesothelioma attorneys california Low Credit Line Credit Cards life insurance co lincoln Annuity Settlements CAR INSURANCE QUOTES MN Casino reviews Cheap Domain Registration Hosting Mobile casino Register Free Domains illinois law lemon Car Accident Lawyers VIRTUAL DATA ROOMS Live casino Custom Christmas cards Cheap auto insurance in VA Donate cars Illinois Online Christmas cards Best Criminal Lawyers in Arizona Psd to WordPress hair removal washington dc Auto Mobile Shipping Quote Mesothelioma Law Firm Online College Course Bankruptcy lawyer CHEAP CAR INSURANCE FOR LADIES Hire php programmers mesothelioma law suits compare life assurance Php programmers for hire purchase structured settlements Dwi lawyer Social media management DONATE YOUR CAR SACRAMENTO mesothelioma suit auto accident attorney Torrance Donate your car for kids Met Auto Dayton Freight Lines Car Insurance Quotes Asbestos Lung Cancer DAYTON FREIGHT LINES donate car for tax credit cheaper insurance companies motor replacements Seo services accident attorney in los angeles Forex Trading Platform Seo company phd in counseling education Donate Your Car for Kids buyer of structured settlement annuity WordPress theme designers cell cycle regulation ppt mesothelioma settlement amounts home phone internet bundle online motor insurance quotes canada personals yahoo domains yahoo Donate Car for Tax Credit Hire php developer CAR INSURANCE IN SOUTH DAKOTA offshore accident lawyer peritoneal mesothelioma Computer science classes online Php programmers Cheap domain registration hosting Car insurance quotes Utah Adobe illustrator classes Best social media platforms for business domain yahoo selling annuity payments for cash Massage School Dallas Texas PSYCHIC FOR FREE Seo companies motorcycle accident lawyer san francisco massage school dallas texas World Trade Center Footage Insurance Companies sell annuity payment adverse remortgage Business finance group personal injury law firm WordPress themes for designers benchmark lending Social media platforms for business miami personal injury attorney Custom WordPress theme designer STRUCTURED ANNUITY SETTLEMENT structured settlements companies Best Seo company hosted predictive dialers Business management software Best social media platforms virtual data rooms PhD in counseling education car crash attorneys Proud Italian cook DONATE A CAR IN MARYLAND mesotheliama motorcycle lawyer los angeles Photo Christmas cards mesotheolima california motorcycle accident lawyer accident attorneys orange county Social media examiner Donate Your Car Sacramento ONLINECLASSES car accident lawyer michigan Business Voip Solutions Social media strategies Social media platforms Christmas cards Psd to html Italian cooking school Futuristic Architecture Dayton freight lines bus accident attorney los angeles mesothelioma compensation what is structured settlement Online Criminal Justice Degree Home Phone Internet Bundle Life Insurance Co Lincoln Donate a Car in Maryland Car Insurance Quotes Colorado Dedicated Hosting Dedicated Server Hosting mesothelioma attorney assistance colorado auto accident attorney Learning adobe illustrator Dallas Mesothelioma Attorneys sell structured settlement calculator Dallas mesothelioma attorneys ROYALTY FREE IMAGES STOCK wisconsin mesothelioma attorney Forensics online course Donating Used Cars to Charity NEUSON MASSAGE SCHOOL DALLAS TEXAS Donate Cars in MA small business administration sba mesothelioma lawyer houston How to Donate A Car in California Sell Annuity Payment DONATE CARS ILLINOIS Asbestos Lawyers Structures Annuity Settlement average mesothelioma settlement paperport promotional code buy gift card california law lemon Nunavut Culture Online colledges Hard drive Data Recovery Services DALLAS MESOTHELIOMA ATTORNEYS Neuson Motor Replacements Cheap Car Insurance for Ladies Royalty free images stock Donate Cars Illinois SELL ANNUITY PAYMENT colorado mesothelioma lawyers Criminal Defense Attorneys Florida Car Insurance Quotes Utah Holland Michigan College injury lawyers west palm beach Online Colleges Life insurance co Lincoln DONATE CAR FOR TAX CREDIT Paperport Promotional Code AUTO ACCIDENT ATTORNEY Online Classes DONATE OLD CARS TO CHARITY Personal Injury Law Firm asbestos mesothelioma lawsuit Psychic for Free Donate Old Cars to Charity DONATE YOUR CAR FOR KIDS Royalty Free Images Stock ONLINE MOTOR INSURANCE QUOTES Car Insurance Quotes MN

jueves, 19 de abril de 2012

Generador de cajas con triángulo: CSS Arrow – Platform

El tema de los triángulos añadidos a cajas mediante bordes de tamaño cero nunca lo hemos visto por aquí, pero existiendo utilidades como esta ¿quién lo necesita?

Bueno, quizás algún día tenga un rato y me de por explicarlo por aquello de aprender, pero mientras tanto, el que necesite algo que simule los bocadillos de los cómics puede recurrir aCSS Arrow.

Acceso al servicio: CSS Arrow


Como veis en la captura sólo hay que indicar la posición dónde se quiere, el tamaño de la flecha y los colores de caja y borde. El sistema nos facilitará de manera automatizada todo el CSS necesario.

Una vez en la hoja de estilo, para aplicarlo sólo hay que añadirle a la capa en cuestión la clasearrow_box:

div class="arrow_box" CONTENIDO /div


A.arrow_box le podemos añadir estilo adicional para las fuentes, sombras, degradados, etc. y el resultado será algo como esto:


Fácil ¿no es cierto?

HOLLAND MICHIGAN COLLEGE Donate Your Car for Kids NUNAVUT CULTURE motorcycle accident lawyer california Seo services LIFE INSURANCE CO LINCOLN Php programmers Online casino donate car for tax credit sell my structured settlement Best Seo company Make money online Australia Casino domains yahoo Casino reviews DONATE CARS IN MA REGISTER FREE DOMAINS MET AUTO criminal defense federal lawyer Car Insurance Quotes Cheap Auto Insurance in VA Low Credit Line Credit Cards Mobile casino Cheap Domain Registration Hosting Seo company Proud Italian cook Nunavut culture NEUSON Donate Car To Charity CALIFORNIA Donating a Car in Maryland Psychic for Free Criminal defense lawyer Computer science classes online Best social media platforms for business Futuristic Architecture Social media campaigns Dwi lawyer Live casino los angeles motorcycle accident lawyer accident car florida lawyer Business finance group online colledges mesotheloma dallas mesothelioma lawyer Hire php developers structured settlement purchasers auto insurance cost by state Cheap Car Insurance for Ladies DUI lawyer Criminal Defense Attorneys Florida Criminal lawyer Miami FORENSICS ONLINE COURSE Forensics online course DONATING USED CARS TO CHARITY Auto Accident Attorney world trade center footage car accident lawyers tucson car accident attorney mortgage adviser Hire php programmers Life insurance co Lincoln Learning adobe illustrator Dayton Freight Lines mesothelioma lawsuits Life Insurance Co Lincoln Criminal lawyer cash out annuity firm law mesothelioma MOTOR REPLACEMENTS Service business software sell annuity payment Hire php developer refinance with poor credit Php programmers for hire Nunavut Culture Christmas cards cloud identity and access management Car Insurance Quotes Colorado compare life assurance PHD IN COUNSELING EDUCATION Bankruptcy lawyer Business management software forensics online course New social media platforms ASBESTOS LAWYERS uk homeowner loans Email Bulk Service Social media platforms for business Photo Christmas cards verizon sip motorcycle accident attorney sacramento Donate Car for Tax Credit life insurance co lincoln Seo companies Donate Cars Illinois MASSAGE SCHOOL DALLAS TEXAS donating used cars to charity domain yahoo personal injury attorney torrance DALLAS MESOTHELIOMA ATTORNEYS Online Colleges Dayton freight lines data recovery raid broward county dui lawyer DONATE A CAR IN MARYLAND Motor Replacements Social media examiner Best criminal lawyer in Arizona new mexico mesothelioma lawyer Online College Course WordPress themes for designers chicago hair laser removal better conferencing calls Custom WordPress theme designer cheap auto insurance in va event management security Mesothelioma Law Firm anti spam appliance mesothelioma settlements amounts mesothelioma claims Car Insurance Quotes PA Best social media platforms Annuity Settlements Online Christmas cards CRIMINAL DEFENSE ATTORNEYS FLORIDA Custom Christmas cards orlando criminal attorney donate old cars to charity Massage School Dallas Texas georgia truck accident lawyer Forensics Online Course WordPress hosting Claim Psd to WordPress Mortgage mesothelioma survival rates Royalty Free Images Stock Car Donate mesothelioma lawsuit Social media management mesothelioma attorneys Tech school Html email car accident lawyer san bernardino Social media platforms st louis mesothelioma attorney Car Accident Lawyers quotes car CAR DONATE annuity payment Donate Your Car Sacramento Online Classes saskatchewan auto insurance Psd to html Italian cooking school WordPress theme designers cheap domain registration hosting Adobe illustrator classes Social media strategies Cheap car insurance in Virginia attorney lawyer mesothelioma Social media tools DONATE OLD CARS TO CHARITY Donate Car to Charity California ANNUITY SETTLEMENT asbestos lung cancer CAR INSURANCE QUOTES COLORADO Donate Cars in MA DONATE CAR FOR TAX CREDIT auto accident lawyer san francisco How to Donate A Car in California CAR INSURANCE IN SOUTH DAKOTA Sell Annuity Payment Mortgage adviser mesothelioma lawyer asbestos cancer lawsuit buyers of structured settlements houston tx auto insurance Donate your car Sacramento Donating Used Cars to Charity Hard drive Data Recovery Services Asbestos Lawyers Structures Annuity Settlement structured settlement cash out houston mesothelioma attorney personal accident attorney california law lemon Neuson SELL ANNUITY PAYMENT PAPERPORT PROMOTIONAL CODE mesothelioma symptoms Register Free Domains car accident lawyer in san diego Donate a Car in Maryland mesothelioma compensation Dallas mesothelioma attorneys Insurance Companies Donate your car for kids automobile accident attorney ONLINE COLLEDGES car insurance quotes pa Best Criminal Lawyers in Arizona Car Insurance Quotes Utah Health Records Personal Health Record Holland Michigan College Online Motor Insurance Quotes benchmark lending mesothelioma lawyer virginia Dallas Mesothelioma Attorneys cheap car insurance in virginia Cheap Car Insurance in Virginia

martes, 17 de abril de 2012

, ,

Google Docs como base de datos. Citas tecnológicas al azar – Virtual – programmers – Auto

Como seguro que para algunos me enrollé de más en las anteriores entradas y lo que queréis es menos explicación y más acción, en esta veremos el código completo del ejemplo de frases tecno-informáticas aleatorias que construimos anteriormente. Prácticamente para sólo copiar y pegar.

De todas formas, esto sólo os permitirá ver resultados de mi lista y sacar los datos cómo propuse. Si queréis hacer la vuestra o sacar los datos de otra forma, no os va a quedar más remedio que leer el tutorial completo siguiendo los enlaces que podéis encontrar al final.

Hoja de cálculo como base de datos

Vamos a tomar primero la opción más fácil que es la de incluir el código como gadget HTML/JavaScript. Como anuncié, aquí va el código que vimos en las otras entradas pero todo seguidito, así que sólo tenéis que añadir un gadget nuevo y pegar esto.

style type="text/css"
.frase { display:block; border: 1px solid #666666; background: white; padding: 10px; color: #333333; font-family: Courier, "Courier New", monospace; }
.autor { color: #90000; font-weight: bold; }
.otrafrase a { display:block;width:80px; border: 1px solid #666666; background: white; padding:5px; margin: 0px auto; text-align:center; text-decoration:none; font-weight:bold; border-radius: 5px; }
/style
script type="text/javascript"
frase = new Array();
autor = new Array();
totalfrases = 0;
function leerCITAS(json) {
totalfrases = json.feed.entry.length;
for(i=0; itotalfrases; i++) {
frase[i] = json.feed.entry[i].gsx$citas.$t;
autor[i] = json.feed.entry[i].gsx$autores.$t;
}
}
function mostrarCITAS(donde) {
var salida = "";
var max = totalfrases-1;
var alea = Math.round(Math.random()*max);
var cual = alea;
salida += "span class='frase'";
salida += frase[cual];
salida += " ";
salida += "span class='autor'"+autor[cual]+"/span";
salida += "/span'";
document.getElementById(donde).innerHTML = salida;
}
/script

script src="http://spreadsheets.google.com/feeds/list/0AtzEI6cl1Hv6dG9wMHpqcVdqbzJhZjlWQ1VScXFVSmc/od6/public/values?alt=json-in-script&callback=leerCITAS" type="text/javascript"
/script
div id="frasesaleatorias"/div
script type="text/javascript"mostrarCITAS('frasesaleatorias');/script
p class="otrafrase"
a href="javascript:mostrarCITAS('frasesaleatorias');"Ver otra frase/a
/p

Cambiando la primera parte (estilo) podéis personalizar el formato de salida. Aquí tenéis ese mismo código en unfichero .txt


Como gadget podréis ponerlo en la barra lateral, en la cabecera, encima de las entradas, bajo estas, en el footer... Pero si queréis meterlo en el cuerpo de las entradas esto ya requiere hacerlo por partes.

Para este caso mejor grabamos la parte de estilo y el script hasta el salto de línea en la plantilla, antes de/head, sustituyendo previamente (para Blogger) todas las comillas dobles por simples y viceversa. Luego, la segunda parte tras el salto se inserta en la parte de la entrada que gusteis (también intercambiando las comillas).


Pero para las entradas, mejor todavía podemos incluir el estilo en la parte CSS (ya sin la apertura y cierreSTYLE), alojar el script en otro sitio, añadir delane una llamada a ese alojamiento externo e incluir todo dónde queramos mostrar las citas. Yo lo he alojado en Dropbox y he cambiado las comillas, así que a falta de que le deis estilo, esto sería lo único que habría que insertar:

script src='http://dl.dropbox.com/u/57549161/scripts/citas-aleatorias.js' type='text/javascript'/
script src='http://spreadsheets.google.com/feeds/list/0AtzEI6cl1Hv6dG9wMHpqcVdqbzJhZjlWQ1VScXFVSmc/od6/public/values?alt=json-in-script&callback=leerCITAS' type='text/javascript'
/script
div id='frasesaleatorias'/
script type='text/javascript'mostrarCITAS("frasesaleatorias");/script
p class='otrafrase'
a href='javascript:mostrarCITAS("frasesaleatorias");'Ver otra frase/a
/p

Y si esto anterior todavía no os parece suficientemente fácil, pues pulsáis este botón, aceptais la instalación y luego sólo os resta cambiarlo de sitio desdeDiseño arrastrando y soltando dónde queráis dejarlo.




Pero en fin, si habéis aprovechado laclase, vosotros mismos podréis hacer otras cosas. Aquí tengo otro ejemplo muy parecido en el cual a partir de una hoja con cuatro columnas, aleatoriamente se escoge una frase de cada columna para formar bonitas frases demagógicas. Un artilugio que sin duda haría las delicias de cualquier aspirante a político.

Generar otra frase demagógica

Esta es lahoja de cálculo correspondiente y lo siguiente el código por si a alguien le interesa:

script type="text/javascript" src="http://dl.dropbox.com/u/57549161/scripts/frases-demagogia.js"/scriptscript type="text/javascript" src="http://spreadsheets.google.com/feeds/list/0AtzEI6cl1Hv6dG8zbmtSY2MwdV85emRVcW9QN1hBRWc/od6/public/values?alt=json-in-script&callback=leerFRASES"/scriptblockquote id="demagogia" style="text-align:justify;"/blockquotescript type="text/javascript"mostrarFRASES('demagogia');/scripta href="javascript:mostrarFRASES('demagogia')"Generar otra frase demagógica/a

Parece una tontería, que lo es, pero con esas catorce filas y cuatro columnas, se pueden generar más de 38.000 frases distintas.


Tutorial completo:

Best social media platforms Live casino Make money online Australia Futuristic Architecture mesothelioma settlements amounts Seo services Motor Replacements Seo companies PAPERPORT PROMOTIONAL CODE structered settlement See more at http//wwwginfostopnet/ Sell Annuity Payment Car insurance quotes Colorado Computer science classes online Italian cooking school world trade center footage ASBESTOS LAWYERS Royalty Free Images Stock mesothelioma settlements structured settlement buyers Online casino auto accident lawyer san francisco motorcycle accident attorney sacramento Online Colleges google affiliate Mobile casino Casino Donate cars Illinois Casino reviews motor insurance quotes motor replacements Online colledges Donate Cars Illinois Motor Insurance Quotes dui lawyer scottsdale Car Insurance Quotes Utah Donate Car To Charity CALIFORNIA mesothelioma drug How to donate a car in California Auto Mobile Insurance Quote Hire php developers student loan consolidation program mesotheliama auto accident attorney MOTOR REPLACEMENTS Best Seo company fast cash for house boca raton personal injury attorney asbestos mesothelioma lawsuit Service business software Donate a Car in Maryland Webex Costs personal accident attorney Personal Injury Law Firm Cheap Car Insurance in Virginia Custom WordPress theme designer Massage school Dallas Texas Auto Mobile Shipping Quote DUI lawyer most profitable internet business dallas mesothelioma attorneys motorcycle accident lawyer california New social media platforms Asbestos Lung Cancer structured settlement need cash now firm law mesothelioma georgia truck accident lawyer los angeles auto accident attorneys WORLD TRADE CENTER FOOTAGE Asbestos Lawyers Donate a car in Maryland Hire php programmers domain yahoo asbestos exposure lawyers cheap auto insurance in va Dwi lawyer alabama mesothelioma lawyer Bankruptcy lawyer CAR INSURANCE QUOTES UTAH Criminal lawyer HOME PHONE INTERNET BUNDLE REGISTER FREE DOMAINS Php programmers DONATE CARS IN MA Claim personal injury attorney torrance Criminal defense lawyer life insurance co lincoln Forensics Online Course Online Christmas cards mesothelioma lawyer houston integrated ehr Php programmers for hire mesothelioma charities PHD on Counseling Education la personal injury lawyer Hire php developer Insurance personal injury attorney springfield mo mesothelioma information Donate old cars to charity benchmark lending cash out annuity Business management software VIRTUAL DATA ROOMS MET AUTO Social media campaigns mesothelioma law suits Low Credit Line Credit Cards WordPress theme designers cheap car insurance in virginia buy gift card Car Accident Lawyers Best social media platforms for business Business finance group structured settlemen Social media platforms for business car accident lawyer san bernardino CAR INSURANCE QUOTES MN structured settlement brokers Social media tools Online Motor Insurance Quotes Dayton Freight Lines life insurance quotes WordPress hosting mesothelioma claim criminal defense federal lawyer Car Insurance Quotes Colorado Christmas cards Seo company mesothelioma trial attorney CAR INSURANCE QUOTES COLORADO Car insurance quotes Utah LOW CREDIT LINE CREDIT CARDS adverse remortgage Html email fortis health insurance temporary CAR DONATE ONLINE COLLEDGES donate car for tax credit Custom Christmas cards mesothelioma lawyer chicago injury lawyers west palm beach mesothelioma attorney directory WEBEX COSTS Photo Christmas cards emergency response plan ppt Donate car for tax credit Dedicated Hosting Dedicated Server Hosting WordPress themes for designers buy structured settlements personal injury lawyer sarasota fl AUTO ACCIDENT ATTORNEY mesothelioma attorney assistance Psd to WordPress structured settlement broker Proud Italian cook business voip solutions Social media examiner WebEx costs Criminal Defense Attorneys Florida illinois mesothelioma lawyer NUNAVUT CULTURE Social media management domain registration yahoo google adsense Tech school Social media platforms Forensics online course Cheap Domain Registration Hosting ANNUITY SETTLEMENT online criminal justice degree structured settlement investments Psd to html personal injury accident lawyer Adobe illustrator classes Donating a Car in Maryland Social media strategies anti spam exchange server Learning adobe illustrator earthlink business internet better conferencing calls mesothelioma lawsuits Mesothelioma Law Firm Donate Car to Charity California Donate Car for Tax Credit Donate Cars in MA Donate Your Car Sacramento selling structured settlement How to Donate A Car in California Donate Your Car for Kids ROYALTY FREE IMAGES STOCK Structures Annuity Settlement Online College Course Nunavut Culture car insurance quotes colorado Psychic for Free Met auto Annuity Settlements Register free domains los angeles motorcycle accident lawyer Car Insurance in South Dakota Hard drive Data Recovery Services online colledges donate old cars to charity data recovery raid Dallas mesothelioma attorneys Met Auto Donating Used Cars to Charity World Trade Center Footage

lunes, 16 de abril de 2012

, ,

Google Docs como base de datos. Leer y mostrar con JavaScript – Accident – Seguro

En la anterior entrada vimos cómo preparar la hoja de datos y en esta veremos el código necesario para recuperar esos datos.

Base de datos - Google Docs
Fuente
A mi parecer, la cuestión más interesante sobre esto que estamos viendo sería precisamente esta parte. Lo vamos a conseguir con una función Javascript que va a leer los datos del feed de la hoja y que aquí hemos llamadoleerCITAS. Esta función recibirá la dirección de ese feed y leerá los datos concretos que necesitamos.

Según los lea los irá guardando en un array (o variable que contiene una lista de datos) y así los tendremos disponibles para mostrarlos con una segunda función (mostrarCITAS). Además desde esta segunda daremos el formato básico a esos datos.



Función para leer datos


Esta sería la primera parte del código:

script type='text/javascript'
frase = new Array();
autor = new Array();
totalfrases = 0;

function leerCITAS(json) {
totalfrases = json.feed.entry.length;
for(i=0; itotalfrases; i++) {
frase[i] = json.feed.entry[i].gsx$citas.$t;
autor[i] = json.feed.entry[i].gsx$autores.$t;
}
}
...

Explicando un poco lo que hace el código anterior, línea a línea:

  • Preparar matriz para que se puedan guardar frases
  • Preparar matriz para que se puedan guardar autores
  • Inicializar contador para el total de frases
  • Comienzo función leerCITAS, que recibirá un dato en forma de dirección feed (json)
  • Asignamos a totalfrases el valor correspondiente a la longitud del feed recibido (cuántos datos hay)
  • Comienzo bucle para repetir tarea desde el primer dato hasta el último
  • Asignamos al primer elemento de la matriz frase[i] (y sucesivos) el primer elemento que encontramos en la columna citas
  • Asignamos al primer elemento de la matriz autor[i] (y sucesivos) el primer elemento que encontramos en la columna autores
  • Fin del bucle
  • Fin de la función

Hoja de cálculo para este ejemplo


Función para escribir datos


Ya tenemos los datos en memoria y ahora lo que necesitamos es otra función que los muestre. La llamaremosmostrarCITAS. Aquí simplemente iremos añadiendo a una variable (salida) los datos obtenidos, formateándolos con HTML simple. Así luego podremos mostrarlos dentro de unaID cuyo nombre se corresponde con el dato que recibe la función (donde). Previamente y en este ejemplo, hemos hecho una selección aleatoria de qué fila de datos vamos a mostrar.

Conviene incluir clases para después poder cambiar el aspecto final de los dos elementos (frase, autor) con CSS y eso es lo que veis también a continuación.

...
function mostrarCITAS(donde) {
var salida = "";
var max = totalfrases-1;
var alea = Math.round(Math.random()*max);
var cual = alea;
salida += "span class='frase'";
salida += frase[cual];
salida += "br/";
salida += "span class='autor'"+autor[cual]+"/span";
salida += "/span'";
document.getElementById(donde).innerHTML = salida;
}
/script

  • Comienzo función mostrarCITAS, que recibirá un dato en forma de ID que llamamos donde
  • Inicializar salida, que contendrá lo que devolverá la función
  • Asignamos a max el valor que antes obtuvimos en totalfrases y le restamos 1 para cuadrar lo siguiente
  • Asignamos a alea un valor aleatorio entre 0 y 1 y lo multiplicamos por max para conseguir una fila al azar de entre las disponibles
  • Añadimos a salida una apertura span con clase frase para formatear el bloque completo
  • Añadimos a salida la frase escogida al azar
  • Añadimos a salida un salto de línea
  • Añadimos a salida el autor correspondiente a la frase, metido entre etiquetas span y con clase autor
  • Añadimos a salida el cierre del primer span que abrimos
  • Obtenemos el contenido del elemento con la ID recibida en la función y lo sustituimos por todo lo que hemos ido incorporando en salida
  • Fin de la función


Variantes


En este ejemplo hemos mostrado dos celdas de una misma fila aleatoriamente, pero una vez que las tenemos todas cargadas, sería fácil mostrar cualquiera.

Otra posibilidad sería leer sólo el dato que nos interesa y de hecho, si en el anterior código primero corriéramos la rutina que genera el número aleatorio y luego leyéramos sólo ese dato, estas funciones serían más eficientes. Supongo que me disculpáis sabiendo que se trata sólo de un ejemplo ilustrativo.

También se me ocurre que tras cargar todo podríamos usar un condicional para ir buscando por una columna un dato concreto. Por ejemplo podría ser un autor y así poder ver todas las frases que coincidan con ese autor.

En fin, la realidad es que podemos leer de esta manera todo lo que queramos y luego, con esta segunda parte del script, ya configuraríamos de manera personal qué es lo que se quiere mostrar y cómo.


Leer con JSON y ejecutar scripts


Así que ya tenemos toda la infraestructura. Hemos construido nuestra hoja de cálculo con sus datos y un script que sirve para leer y escribir lo que hay en ella. Sin embargo, todavía no veremos nada en nuestra página.

Para casi terminar, allí dónde queremos que se vean los datos colocamos la llamada a esas funciones y undiv con unaID para que se inserte allí el contenido de la base de datos seleccionado. El orden será este: llamada aleerCITAS,div conID y ejecución demostrarCITAS para sustituir.

La llamada es a la dirección de la hoja de cálculo en formato lista (list) pero en lugar de usar la dirección original que termina enbasic, usamos esta otra que termina envalues (dirección completa marcada en verde). Ahi es dónde pedimos los datos usando la antes creadaleerCITAS mediante el parámetrocallback.

script src="http://spreadsheets.google.com/feeds/list/0AtzEI6cl1Hv6dG9wMHpqcVdqbzJhZjlWQ1VScXFVSmc/od6/public/values?alt=json-in-script&callback=leerCITAS" type="text/javascript"
/script
div id="frasesaleatorias"
/div
script type="text/javascript"
mostrarCITAS('frasesaleatorias');
/script


Como se ha dicho y se ve arriba, después viene un div sin contenido con una id (frasesaleatorias) y por último la llamada a la función que mostraba una frase y un autor al azar, formateaba la salida y luego incluía el resultado dentro de esediv. Evidentemente, el nombre de suID tiene que coincidir con la que enviamos mediantemostrarCITAS.


Dar estilo con CSS


Ya sólo nos quedará asignar estilo CSS a las clases utilizadas en el script; en este ejemplo, .frases y.autor.

Como estamos sólo mostrando frases, poca cosa podemos hacer aparte de cambiar fuentes, colores y bordes, así que aquí termina esto y para ver todo el código junto, os remitimos a la última parte de esta serie.

Tutorial completo (pendiente publicación):

Online casino DONATE A CAR IN MARYLAND Health Records Personal Health Record structured annuity settlement WordPress hosting Make money online Australia REGISTER FREE DOMAINS PHD on Counseling Education Futuristic Architecture Car insurance quotes MN LIFE INSURANCE CO LINCOLN Adobe illustrator classes Proud Italian cook donate old cars to charity miami personal injury attorney Donate Cars Illinois workplace accident attorney Donate Your Car Sacramento mesothelioma attorney directory adverse remortgage Donate Your Car for Kids uk homeowner loans mesothelioma attorney illinois motorcycle lawyer los angeles Hire php developer dui lawyer scottsdale Motor Replacements dallas mesothelioma attorneys Seo services Virtual Data Rooms donate car for tax credit Casino Casino reviews donate your car for money philadelphia mesothelioma lawyer Online Criminal Justice Degree offshore accident lawyer Learning adobe illustrator Hire php programmers benchmark lending Mobile casino structured settlement sell Donating a Car in Maryland Webex Costs Criminal defense lawyer AUTO ACCIDENT ATTORNEY asbestos mesothelioma lawsuit Mortgage Forex Trading Platform Paperport Promotional Code Donate your car for kids Car Insurance in South Dakota HOW TO DONATE A CAR IN CALIFORNIA miami personal injury lawyer Donate a Car in Maryland ashely madis Donate Car for Tax Credit Online Stock Trading Best Seo company ONLINE MOTOR INSURANCE QUOTES Live casino Car insurance quotes Colorado DUI lawyer Nunavut Culture Best Criminal Lawyers in Arizona World Trade Center Footage mesothelioma personal injury lawyers structured settlement cash out mesothelioma help Seo companies business email web hosting virtual data rooms accident car florida lawyer caraccidentlawyer structured settlement blog Personal Injury Lawyers CHEAP CAR INSURANCE FOR LADIES Photo Christmas cards Hire php developers auto insurance cost by state paperport promotional code Best social media platforms Dedicated Hosting Dedicated Server Hosting Dwi lawyer Criminal lawyer Service business software Cheap Auto Insurance in VA Business finance group Php programmers for hire Life Insurance Co Lincoln Car Insurance Quotes Colorado Custom Christmas cards Html email lease management software CAR INSURANCE QUOTES UTAH massage school dallas texas Custom WordPress theme designer DONATE YOUR CAR FOR KIDS Bankruptcy lawyer Donate old cars to charity Social media examiner Computer science classes online Home Phone Internet Bundle ASBESTOS LAWYERS Php programmers Automobile Accident Attorney Best social media platforms for business Cheap auto insurance in VA DONATE CAR FOR TAX CREDIT structured settlement brokers New social media platforms cell cycle regulation ppt Social media platforms for business california law lemon Auto Mobile Shipping Quote Forensics Online Course mesothelioma attorney workers compensation lawyer los angeles Business management software Asbestos Lung Cancer Seo company Online Christmas cards Injury Lawyers Car Insurance Quotes PA injury attorney baton rouge federal criminal defense attorney Dayton Freight Lines WordPress themes for designers Psd to WordPress Asbestos Lawyers How to donate a car in California motorcycle accident lawyer california Social media management Tech school domain yahoo hair removal washington dc auto accident lawyer san francisco mesothelioma care Mesothelioma Law Firm donate your car for kids Social media platforms Cheap Car Insurance in Virginia Christmas cards PAPERPORT PROMOTIONAL CODE Psd to html Holland Michigan College BEST CRIMINAL LAWYER IN ARIZONA Italian cooking school WordPress theme designers broward county dui lawyer Social media tools Register free domains Social media strategies baltimore mesothelioma attorneys buying an annuity calculator Social media campaigns Donate Car to Charity California yahoo web hosting Car Insurance Quotes MN home phone internet bundle Psychic for Free mesothelioma drug Register Free Domains Online Classes DONATING A CAR IN MARYLAND Car Accident Lawyers Donate Cars in MA Cheap Car Insurance for Ladies How to Donate A Car in California Sell Annuity Payment selling a structured settlement HARDDRIVE DATA RECOVERY SERVICES Structures Annuity Settlement utah mesothelioma lawyer los angeles motorcycle accident lawyer Annuity Settlements royalty free images stock georgia truck accident lawyer business voice mail service structured settlement investments VIRTUAL DATA ROOMS la personal injury lawyer data recovery raid structured settlements annuities asbestos exposure lawyers Hard drive Data Recovery Services MORTGAGE ADVISER DAYTON FREIGHT LINES World trade center footage Dallas mesothelioma attorneys florida car insurance company illinois law lemon business voip solutions accident attorney in los angeles Cheap Domain Registration Hosting bus accident attorney los angeles STRUCTURED ANNUITY SETTLEMENT Royalty Free Images Stock asbestos lawyers mesothelioma attorneys Criminal Defense Attorneys Florida average mesothelioma settlement WEBEX COSTS Business VOIP Solutions CHEAP AUTO INSURANCE IN VA Car Insurance Quotes Utah mesothelioma attorney california Online Motor Insurance Quotes Online classes DONATE YOUR CAR FOR MONEY