Fermer

Login

You've been logged-out from spontex.

Authenticate

Your spontex.org account




Or




New here?


Create an account

Données personnelles ?

Information on this website is public but you have to be logged-in to share. Login, means "give a username and a password". Then, you'll be able to fill some more but nothing is mandatory. If you can read this, it means you clicked on something restricted to logged-in. NOBODY DIED registring here. If you wish not to register, feel free, but don't click on that link again :-)

Titre
Please share those informations... but do not forget to add a link to spontex!
you should never read that.

Sources des LSV avec un S ou non ?


Avatar of Ghost
Ghost - July 16, 2011 - 17:32:16

UPDATE lsv_lsvtrans 
SET sources = x.arr[2], details = x.arr[1]
FROM (
	SELECT id, string_to_array(details, '+Source :+') AS arr 
	FROM lsv_lsvtrans
	WHERE array_upper(string_to_array(details, '+Source :+'), 1)=2
) x
WHERE x.id=lsv_lsvtrans.id


Avatar of mansuetus
mansuetus - July 16, 2011 - 17:35:17

from spontex.lsv import models
import re
a = 0
for l in models.LsvTrans.objects.all():
    ok = 0
    try:
       details = details.split('+Sources:+\r\n')[0]
       sources = l.details.split('+Sources:+\r\n')[1]
       ok = 1
    except:
       try:
           details = l.details.split('+Source:+\r\n')[0]
           sources = l.details.split('+Source:+\r\n')[1]
           ok = 1
       except:
           try:
               details = l.details.split('+Source :+\r\n')[0]
               sources = l.details.split('+Source :+\r\n')[1]
               ok = 1
           except:
               try:
                   details = l.details.split('+Sources :+\r\n')[0]
                   sources = l.details.split('+Sources :+\r\n')[1]
                   ok = 1
               except:
                   try:
                       details = l.details.split('+Sources :+ \r\n')[0]
                       sources = l.details.split('+Sources :+ \r\n')[1]
                       ok = 1
                   except:
                       try:
                           details = l.details.split('+Source :+ \r\n')[0]
                           sources = l.details.split('+Source :+ \r\n')[1]
                           ok = 1
                       except:
                            try:
                                details = l.details.split('+Source :+\n')[0]
                                sources = l.details.split('+Source :+\n')[1]
                                ok = 1
                            except:
                                try:
                                    details = l.details.split('+Sources :+\n')[0]
                                    sources = l.details.split('+Sources :+\n')[1]
                                    ok = 1
                                except:
                                    try:
                                        details = l.details.split('+Source :+ \n')[0]
                                        sources = l.details.split('+Source :+ \n')[1]
                                        ok = 1
                                    except:
                                        try:
                                            details = l.details.split('+Sources :+ \n')[0]
                                            sources = l.details.split('+Sources :+ \n')[1]
                                            ok = 1
                                        except:
                                            ## Pas de sources
                                            a = a + 1
    if ok == 1:
        l.details = details
        l.sources = sources
        l.save()

J'ai exécuté ça. ta requête me fait trop peur ^^


Avatar of Ghost
Ghost - July 16, 2011 - 17:36:58

Pfff merci de m'avoir faire perdu 2h…


Avatar of Ghost
Ghost - July 16, 2011 - 18:52:00

UPDATE lsv_lsvtrans 
SET sources = x.arr[2], details = x.arr[1]
FROM (
	SELECT id, regexp_split_to_array(details, E'(\\+Source)(.*)(:)(.*)(\\+)') AS arr
	FROM lsv_lsvtrans 
	WHERE array_upper(regexp_split_to_array(details, E'(\\+Source)(.*)(:)(.*)(\\+)'), 1)=2
) x
WHERE x.id=lsv_lsvtrans.id;

La requête a été exécutée avec succés : 946 lignes modifiées. La requête a été exécutée en 172 ms.

(Sachant que j'ai modifié les LSV 1060 FR et 67 EN pour que le source se termine par + en local et sur le vrai site)


Avatar of mansuetus
mansuetus - July 16, 2011 - 21:17:54

J'avoue : c'est beau ;-)


Avatar of Beri
Beri - July 17, 2011 - 15:32:56

Ca sent le geek ici, c'est beau, ca me donne envie de me refoutre à tout ca.


Avatar of mansuetus
mansuetus - July 17, 2011 - 22:36:07

Le bug #1 a été corrigé : c'est pratiquement parfait.
Un outil pour corriger les URL a été fournis à côté, dans la partie modo, pour les plus résistantes.


Avatar of Be@
Be@ - July 17, 2011 - 23:46:57

Ouais, ben ça bétonne rien du tout !

Je viens de tester celle-ci que j'ai tinyurlisée ce matin dans le lsv “Voie alccolisée” : http://www.radio-canada.ca/nouvelles/Science-Sante/2006/04/05/004-voielactee-nuagealcool.shtml?ref=rss et il me dit :

Un % a été détectée : serait-elle déjà bétonnée ?

Et là je ne peux faire que OK et rien ne se passe.
Pourquoi il marche pas le nouveau jouet ? :'(


Avatar of mansuetus
mansuetus - July 18, 2011 - 00:15:23

pas besoin, si ?

Le bétonnage, ça ne sert QUE pour les pour lesquels on ne peut pas faire ça :-)


Avatar of Ghost
Ghost - July 18, 2011 - 01:26:24

Mans le bug apparaît aussi quand il y a 2 tirets, genre 2005—10–2, le textile fait un seul trait, ce qui foire. Ajoute ça aussi au bétonnage =) ie remplacer les – par %2D.


Avatar of Beri
Beri - July 18, 2011 - 11:14:43

Et si on tente un bétonnage avec une URL déjà bétonnée (ou conmtenant un %) ca essaye quand même un formatage et du coup ca plante, exemple:

fr.wikipedia.org/wiki/Est%C3%A9rification

devient

fr.wikipedia.org/wiki/Est%25C3%25A9rification


Avatar of mansuetus
mansuetus - July 18, 2011 - 11:16:41

Beri : D'où le message :-)

Ahmet : regarde le code, ce sera plutôt le supprimer du bétonnage ^^
(j'essaye d'y penser ce soir)


Avatar of Beri
Beri - July 18, 2011 - 11:24:59

Ce que je voulais dire par là c'était peut être de faire apparaitre le résultat dans une autre textbox pour garder l'original, de faire un lien avec le lien original et un lien avec le bétonné en exemple juste en dessous (dynamique).
Comme ca le posteur peut tester le lien directement et choisir entre bétonné ou non bétonné.


Avatar of Ghost
Ghost - July 18, 2011 - 15:35:51

Mans dans ce cas pourquoi tu ne fais pas un decodeURIComponent() de l'url puis tu l'encodes à nouveau ?


Avatar of mansuetus
mansuetus - July 19, 2011 - 00:55:19

bonne idée :-)



New post

You'll be able to post an answer when you are logged-in
Login/create an account