Page 1 sur 1

DropBox Direct Link Generator

Publié : sam. 09/avr./2016 12:56
par Ar-S
Vous êtes quelques uns à utiliser Dropbox pour partager vos fichiers. Ces "clouds" sont en effet pratique pour les gens n'ayant pas d'espace web dédié.
Lorsqu'un utilisateur clique sur un lien partagé pour récupérer, il faut ensuite recliquer sur "telecharger" puis une "popup" de dropbox proposant l'inscription au service, ou pas.
Pour récupérer le fichier sans compte dropbox, il faut donc ensuite cliquer sur un lien "Non merci, je souhaite poursuivre le téléchargement →"

Comme j'aime bien aller d'un point à un autre sans avoir à zigzaguer, j'ai fait un petit convertisseur qui permet aux utilisateur de dropbox de partager un lien directe sur le forum.

Exemple avec le lien de micoute concernant les menu de la semaine : https://www.dropbox.com/s/083z43ym304b2 ... e.zip?dl=0
une fois passé à la pettie moulinette de mon soft, le lien généré devient

Code : Tout sélectionner

[url]https://www.dropbox.com/s/083z43ym304b257/Menu%20de%20la%20semaine.zip?dl=1&pv=1[/url]
le lien est donc directement copié dans le presse papier et inclus les balises URL, il ni a plus qu'à le poster :wink:

Code : Tout sélectionner

; Générateur de lien directe pour partage via dropbox
; Auteur : Ar-S
; Date : 09/04/2016 
; Compilé en PB 5.42 x86

Enumeration
  #WIN
  #AFF
  #BT_MUTE
  #Font_AFF
EndEnumeration

;- /////// PROCEDURES ///////

Procedure OpenWindow_Win()
  If OpenWindow(#WIN, 646, 610, 373, 68, "DropBox Direct Link Generator",#PB_Window_ScreenCentered| #PB_Window_SystemMenu|#PB_Window_MinimizeGadget|#PB_Window_TitleBar)
    StickyWindow(#WIN,1)
    
    StringGadget(#aff,1,1, 370,30,"Copiez le lien dropbox et cliquez sur le bouton",#PB_String3D_ReadOnly)
    ButtonGadget(#BT_MUTE,1,35,370,30,"Convertir en lien direct")
    ; Gadget Fonts
    SetGadgetFont(#AFF, LoadFont(#Font_AFF, "arial", 9, 16))
    SetGadgetFont(#BT_MUTE, LoadFont(#Font_AFF, "arial", 14, 16))
    ; Window Backcolor
   SetWindowColor(#WIN, $0)
      
  EndIf
EndProcedure


Procedure.s Mute(URLoriginale.s)
  Protected Reverse.s,compte,ID.s,Limit,Fichier.s,R.s
  
  Global NewList U.s()
  ClearList(U()) 
  
  ; Inversion de la chaine pour traitement plus facile 
  Reverse.s = ReverseString(URLoriginale)
  
  ; Vérifions si le lien est ok
  If Left (URLoriginale, 26) = "https://www.dropbox.com/s/" And FindString(URLoriginale,"?dl=0") <> 0
    
    
  ; si oui on procède au parsing  
  Compte = CountString(Reverse,"/")
  For i = 1 To 2
    AddElement( U.s() )
    R.s = StringField(Reverse,i,"/")
    U() = ReverseString(R)
    Debug U()
  Next
  
  SelectElement(U(),0)
  Limit = FindString(U(),"?")
  FICHIER.s = Mid(U(),0,Limit-1)
  SelectElement(U(),1)
  ID.s = U()
  
  Retour.s = "https://www.dropbox.com/s/"+ID+"/"+Fichier+"?dl=1&pv=1"
Else
  Retour.s = "erreur"
EndIf

   ProcedureReturn Retour
  
EndProcedure



;- /////// PROGRAMME ///////


OpenWindow_Win()

;{- Event loop
Repeat
  Select WaitWindowEvent(100)

    Case #PB_Event_Gadget
			Select EventGadget()

			  Case #BT_MUTE
			    
			    
          DDLINK.s = Mute( GetClipboardText() )
          If DDLINK <> "erreur"
          SetClipboardText("[url]"+DDLINK+"[/url]")
          SetGadgetText(#aff, "Le lien a été copié dans le presse papier avec balises")
        Else
          SetGadgetText(#aff, " Lien invalide")
          
        EndIf
        
      EndSelect

			
    Case #PB_Event_CloseWindow
			Select EventWindow()
        Case #WIN
					CloseWindow(#WIN)
					End
      EndSelect
      
      
  EndSelect
ForEver

EnJoYeZ

Re: DropBox Direct Link Generator

Publié : sam. 09/avr./2016 21:01
par venom
Pas bête, rapide et pratique ce petit soft. 8)






@++

Re: DropBox Direct Link Generator

Publié : dim. 10/avr./2016 7:17
par Micoute
Je trouve aussi, merci au passage pour le partage.

Re: DropBox Direct Link Generator

Publié : lun. 11/avr./2016 7:13
par microdevweb
Sympa et pratique AR_S

Merci