[auth] Administration du blog de Geo (Get: 1); if:(params)->size>1; Local:'addBR'=(Params)->(Get: 2); else; Local:'addBR'=1; /if; Local: 'str_out' = #str_in; // on remplace toutes les occurences par des insécables #str_out->(replace:'\t',' '); #str_out->(replace:'« ','« '); #str_out->(replace:' »',' »'); #str_out->(replace:' :',' :'); #str_out->(replace:' ;',' ;'); #str_out->(replace:' ?',' ?'); #str_out->(replace:' !',' !'); #str_out->(replace:'– ','– '); if:#addBR==1; // on ajoute aussi les sauts de ligne #str_out->(replace:'\r\n','
'); #str_out->(replace:'\n','
'); #str_out->(replace:'\r','
'); /if; return: #str_out; /Define_tag; ?> Le blog de Geo
0; inline:-database='etechs',-table='clp_posts',-keyField='ID',-keyValue=$pos_ID,-search; var:'pos_titre'=(field:'pos_titre'); var:'pos_cle'=(field:'pos_cle'); var:'pos_actif'=(field:'pos_actif'); /inline; /if; // le type en priorité var:'blk_type'=(action_param:'blk_type'); var:'blk_type_cur'=$blk_type; // et l'action var:'action'=(action_param:'action'); // les traitements qui suivent sont réservés au mode test if:$modeGeneralTest==1; // utilisé en mode test var:'pos_ID'=(action_param:'pos_ID'); // nouveau bloc if:(var:'action')=='newblk'; // on récupère le texte, l'url et l'image var:'blk_texte'=(action_param:'blk_texte'); var:'blk_url'=(action_param:'blk_url'); var:'blk_rang'=(action_param:'blk_rang'); // si aucun champ n'est rempli, on ne fait rien if:$blk_texte!='' || $blk_url!='' || $blk_rang!='' || (File_Uploads->Size)>0; if:(var:'blk_rang')==''; // pour le rang, on prend le rang le plus grand et on ajoute 8 var:'SQL'='select max(blk_rang) as max from clp_blocks where pos_ID='+$pos_ID; if:$modeGeneralTest==1; output:'

'+$SQL+'

',-encodeNone; /if; inline:-database='etechs',-table='clp_blocks',-SQL=$SQL; var:'max'=(field:'max'); if:$max==''; var:'max'=0; /if; /inline; var:'blk_rang'=(math_add:$max,8); /if; inline:-database='etechs',-table='clp_blocks',-keyField='ID', 'pos_ID'=$pos_ID, 'blk_type'=$blk_type, 'blk_texte'=$blk_texte, 'blk_url'=$blk_url, 'blk_rang'=$blk_rang, -add; var:'blk_ID'=(keyField_value); /inline; /if; // fin du test sur les champs vides /if; //modification d'un bloc if:(var:'action')=='modblk'; var:'blk_ID'=(action_param:'blk_ID'); // on récupère tous les textes if:(var:'blk_ID')>0; inline:-database='etechs',-table='clp_blocks',-keyField='ID',-keyValue=$blk_ID,-search; var:'blk_type_cur'=(field:'blk_type'); var:'blk_texte_cur'=(field:'blk_texte'); var:'blk_url_cur'=(field:'blk_url'); var:'blk_rang_cur'=(field:'blk_rang'); var:'blk_param'=(field:'blk_param'); /inline; /if; /if; //update d'un bloc if:(var:'action')=='updblk'; var:'blk_ID'=(action_param:'blk_ID'); var:'blk_texte'=(action_param:'blk_texte'); var:'blk_url'=(action_param:'blk_url'); var:'blk_rang'=(action_param:'blk_rang'); // on update l'enregistrement if:(var:'blk_ID')>0; inline:-database='etechs',-table='clp_blocks',-keyField='ID',-keyValue=$blk_ID, 'blk_texte'=$blk_texte, 'blk_url'=$blk_url, 'blk_rang'=$blk_rang, -update; /inline; /if; /if; if:(var:'action')=='newblk' || (var:'action')=='updblk'; if:$blk_type=='IMG'; // on va chercher la clé du post à partir de son id inline:-database='etechs',-table='clp_posts',-keyField='ID',-keyValue=$pos_ID,-search; var:'pos_cle'=(field:'pos_cle'); /inline; // le directory du post var:'upl_path'=$upl_pathbase+$pos_cle+'/'; // création du directory file_create:$upl_path; // on récupère l'image uploadée var_set:'yena'=0; Loop: (File_Uploads->Size); var_set:'yena'=1; Var_set: 'File'=(File_Uploads)->(Get:Loop_Count); var_set:'ref_field'=($File->(Find: 'upload.fieldname')); //output:'ref field '+$ref_field; var_set:'file_temp'=($File->(Find: 'upload.name')); var_set:'realname'=($File->(Find:'upload.realname')); var_set:'fileName'=($realname->(split:'/'))->(last); var_set:'fileName'=($filename->(split:'\\'))->(last); var_set:'nameBeforeExtension'=($filename->(split:'.'))->(first); var_set:'extension'=($filename->(split:'.'))->(last); if:$extension=='jpg' || $extension=='jpeg'; var:'img_extension'='jpg'; /if; if:$extension=='gif'; var:'img_extension'='gif'; /if; var_set:'nom_image'=$blk_ID+'.'+(var:'img_extension'); var_set:'size'=($File->(Find: 'upload.size')); if:(var:'size')<5000000; var_Set:'file_path'=$upl_path+$nom_image; File_Copy:$file_temp,$file_path,-FileOverwrite; var_set:'errorcode'=(File_CurrentError: -ErrorCode); var_set:'error'=(File_CurrentError); if:(var:'errorcode')!=0; output:'

Une erreur est intervenue : '+$error+'

',-encodeNone; else; output:'

L\'image '+(var:'filename')+' a été uploadée dans le dossier '+$file_path+' et renommée ('+(var:'nom_image')+').

',-encodeNone; /if; else; output:'

la taille est limitée à 5Mo

',-encodeNone; /if; /Loop; if:$yena==1; var:'imageFull'=(image:$file_temp); var:'imageFullW'=($imageFull->Width); var:'imageFullH'=$imageFull->Height; // on conserve l'original var_set:'nom_image_ori'=$blk_ID+'_ori.'+(var:'img_extension'); var_Set:'file_path_ori'=$upl_path+$nom_image_ori; $imageFull->(Save: $file_path_ori, -Quality=85); // on retaille l'image en hauteur $imageFull->(Scale: -Height=480); $imageFull->(Save: $file_path, -Quality=85); // on met l'extension dans le paramètre inline:-database='etechs',-table='clp_blocks',-keyField='ID',-keyValue=$blk_ID,'blk_param'=(var:'img_extension'),-update; /inline; /if; // fin de yena=1 /if; // fin de blk_type='IMG' /if; // fin de var:'action' // suppression : on supprime l'enregistrment et l'éventuelle image if:(var:'action')=='delblk'; var:'blk_ID'=(action_param:'blk_ID'); if:$blk_ID>0; inline:-database='etechs',-table='clp_blocks',-keyField='ID',-keyValue=$blk_ID,-search; var:'blk_param'=(field:'blk_param'); /inline; inline:-database='etechs',-table='clp_blocks',-keyField='ID',-keyValue=$blk_ID,-delete; /inline; // on se préoccupe de l'image // on va chercher la clé du post à partir de son id inline:-database='etechs',-table='clp_posts',-keyField='ID',-keyValue=$pos_ID,-search; var:'pos_cle'=(field:'pos_cle'); /inline; // le directory du post var:'upl_path'=$upl_pathbase+$pos_cle+'/'; // le nom de l'image if:$blk_param==''; var:'blk_param'='jpg'; /if; var:'nomImage'=$blk_ID+'.'+$blk_param; (file_delete:($upl_path+$nomImage)); /if; /if; // activation ou désactivation du post if:(var:'action')=='actpost' || (var:'action')=='despost'; var:'pos_ID'=(action_param:'pos_ID'); if:(var:'action')=='actpost'; var:'pos_actif'=1; else; var:'pos_actif'=0; /if; // on met à jour le champ actif et la date var:'pos_datetimepub'=$datetime_jour_SQL; inline:-database='etechs',-table='clp_posts',-keyField='ID',-keyValue=$pos_ID, 'pos_actif'=$pos_actif, //'pos_datetimepub'=$pos_datetimepub, -update; /inline; // si on active on envoie un mail d'information if:$pos_actif==1; var:'to'='blog@ferriere.net'; Email_Send: -Host='smtp.patgaret.com', -To=$to,-Cc='', -From='geo@ferriere.net', -Subject='Un nouveau post a été publié sur le blog de Geo', -Body=(include:'format_post.las'); /if; /if; /if; // fin de test sur modeGeneralTest=1 // dans tous les cas, on affiche le post en cours if:(var:'pos_ID')>0; var:'SQL'='select * from clp_posts where ID='+(var:'pos_ID'); else; if:(var:'pos_cle')!=''; var:'SQL'='select * from clp_posts where blo_ID='+$blo_ID+' and pos_cle=\''+(var:'pos_cle')+'\''+(var:'chaineActif'); else; var:'SQL'='select * from clp_posts where blo_ID='+$blo_ID+(var:'chaineActif')+' order by pos_datetimepub desc limit 0,1'; /if; /if; if:$modeGeneralTest==2; output:'

'+$SQL+'

',-encodeNone; /if; inline:-database='etechs',-table='clp_posts',-keyField='ID',-SQL=$SQL; // on récupère l'id et la clé du post var:'pos_ID'=(field:'ID'); if:$pos_ID>0; var:'pos_cle'=(field:'pos_cle'); var:'pos_datetimepub'=(field:'pos_datetimepub'); // on transforme la date SQL en date lisible var:'pos_datetimepub_texte'=(date_format:$pos_datetimepub,-format='%d/%m/%Y'); var:'pos_actif'=(field:'pos_actif'); var:'pos_titre'=(field:'pos_titre'); // si c'est une image on cherche son url var:'upl_path'=$upl_pathbase+$pos_cle+'/'; var:'upl_url'=$upl_urlbase+$pos_cle+'/'; /if; /inline; if:$pos_ID>0; // on récupère tous les blocks de ce post inline:-inlineName='blkliste',-database='etechs',-table='clp_blocks',-keyField='ID',-op='eq','pos_ID'=$pos_ID,-sortField='blk_rang',-search; /inline; /if; ?> [if:(var:'pos_ID')>0]

Edition d'un post

Titre du post :
[var:'pos_titre']

url de cette page (cliquez pour la visualiser) :
blogDeGeo.las?cle=[var:'pos_cle'] [if:$modeGeneralTest==1] [if:(var:'lerreur')!=0]

[var:'lerreur_msg']

[/if]

Compléter la page en cours

[if:(var:'blk_type_cur')=='']
Type du bloc
[else]

Type du bloc

[if:(var:'blk_type_cur')!=''] Rang [/if] [if:(var:'blk_type_cur')=='TXT']

Entrer le texte

[/if] [if:(var:'blk_type_cur')=='URL']

Entrer l'intitulé du lien

et son adresse url

[/if] [if:(var:'blk_type_cur')=='IMG']

Choisir l'image

[if:(var:'afficheLegende')==1]

sa légende

[/if] [if:(var:'afficheUrl')==1]

et son lien url

[/if] [/if] [if:(var:'blk_type_cur')=='INC']

Entrer le HTML

[if:(var:'afficheLegende')==1]

et la légende

[/if] [/if] [if:(var:'blk_type_cur')!=''] [if:(var:'action')=='modblk'] [else] [/if] [/if]
[/if] [if:(var:'pos_actif')==1]

> Désactiver le post

[else]

> Activer le post

[/if]

> RETOUR

[/if]
[records:-inlineName='blkliste'] [if:$modeGeneralTest==1]

[field:'blk_rang'] > mod - del v

[/if] [if:(var:'blk_type')=='TXT'] [var:'texte_out'=(clp_remplaceInsecables:(field:'blk_texte'))]

[var:'texte_out',-encodeNone]

[/if] [if:(var:'blk_type')=='IMG'] (contains:'http://'); var:'target'='_blank'; else; var:'target'=''; /if; var:'baliseavant'=''; var:'baliseapres'=''; else; var:'baliseavant'=''; var:'baliseapres'=''; /if; // on conserve l'url de la première image pour les réseaux sociaux if:(var:'imageFirstURL')==''; var:'imageFirstURL'=$upl_url+$imageName; /if; ?> [var:'baliseavant',-encodeNone][if:(file_exists:($upl_path+$imageName))][else][/if][var:'baliseapres',-encodeNone] [if:(field:'blk_texte')!='']

[field:'blk_texte']

[/if] [/if] [if:(var:'blk_type')=='URL'] (contains:'http://'); var:'target'='_blank'; else; var:'target'=''; /if; ?>

Voir [field:'blk_texte']

[/if] [if:(var:'blk_type')=='INC'] [field:'blk_url',-encodeNone]

[field:'blk_texte']

[/if] [/records]

AIDE

[/if]