HTMLUtilities.st
changeset 3456 8a3302fd3cce
parent 3312 fe3d83508353
child 3544 73c88216a4f2
equal deleted inserted replaced
3455:4467a141f5eb 3456:8a3302fd3cce
   435 !HTMLUtilities class methodsFor:'serving-helpers'!
   435 !HTMLUtilities class methodsFor:'serving-helpers'!
   436 
   436 
   437 escape:aString
   437 escape:aString
   438     "helper to escape invalid/dangerous characters in an url's arguments or post-fields.
   438     "helper to escape invalid/dangerous characters in an url's arguments or post-fields.
   439      These are:
   439      These are:
   440         control characters, '+', ';', '?', '&' and space -> %XX ascii as hex digits
   440         control characters, dQuote, '+', ';', '?', '&' and space -> %XX ascii as hex digits
   441         %     -> %%
   441         %     -> %%
   442     "
   442     "
   443 
   443 
   444     | rs ws c |
   444     | rs ws c |
   445 
   445 
   449         c := rs next.
   449         c := rs next.
   450         c == $% ifTrue:[
   450         c == $% ifTrue:[
   451             ws nextPutAll: '%%'.
   451             ws nextPutAll: '%%'.
   452         ] ifFalse:[
   452         ] ifFalse:[
   453             ((c codePoint < 16r7F)
   453             ((c codePoint < 16r7F)
   454              and:[ ('+;?& ' includes:c) not ]) ifTrue: [ 
   454              and:[ ('+;?&" ' includes:c) not ]) ifTrue: [ 
   455                 ws nextPut: c.
   455                 ws nextPut: c.
   456             ] ifFalse:[
   456             ] ifFalse:[
   457                 ws nextPut: $%.
   457                 ws nextPut: $%.
   458                 c codePoint printOn:ws base:16.
   458                 c codePoint printOn:ws base:16.
   459             ]
   459             ]
   506 ! !
   506 ! !
   507 
   507 
   508 !HTMLUtilities class methodsFor:'documentation'!
   508 !HTMLUtilities class methodsFor:'documentation'!
   509 
   509 
   510 version
   510 version
   511     ^ '$Header: /cvs/stx/stx/libbasic2/HTMLUtilities.st,v 1.18 2014-07-01 10:12:38 sr Exp $'
   511     ^ '$Header: /cvs/stx/stx/libbasic2/HTMLUtilities.st,v 1.19 2014-12-17 20:17:07 cg Exp $'
   512 !
   512 !
   513 
   513 
   514 version_CVS
   514 version_CVS
   515     ^ '$Header: /cvs/stx/stx/libbasic2/HTMLUtilities.st,v 1.18 2014-07-01 10:12:38 sr Exp $'
   515     ^ '$Header: /cvs/stx/stx/libbasic2/HTMLUtilities.st,v 1.19 2014-12-17 20:17:07 cg Exp $'
   516 ! !
   516 ! !
   517 
   517