From 5e9ffda2b20e6a8c093d1c9ed3158379fc648067 Mon Sep 17 00:00:00 2001 From: Viktor Szakats Date: Thu, 19 Jun 2008 09:13:02 +0000 Subject: [PATCH] 2008-06-19 11:08 UTC+0200 Viktor Szakats (harbour.01 syenar hu) * contrib/hbtip/cgi.prg * contrib/hbtip/encoder.prg * contrib/hbtip/ftpcln.prg * contrib/hbtip/httpcln.prg * contrib/hbtip/mail.prg * contrib/hbtip/popcln.prg * contrib/hbtip/sendmail.prg * contrib/hbtip/sessid.prg * contrib/hbtip/smtpcln.prg * contrib/hbtip/thtml.prg * contrib/hbtip/url.prg * Some formatting, cleanups, <> -> != * contrib/hbtip/sendmail.prg + hb_SendMail(): Added parameter. * contrib/hbtip/thtml.prg ! Removed five remaining _SET_EXACT dependent string comparisons. Exact comparisons were used for all these cases, with a NOTE added. --- harbour/ChangeLog | 22 ++++++ harbour/contrib/hbtip/cgi.prg | 114 ++++++++++++++--------------- harbour/contrib/hbtip/encoder.prg | 4 +- harbour/contrib/hbtip/ftpcln.prg | 26 +++---- harbour/contrib/hbtip/httpcln.prg | 36 ++++----- harbour/contrib/hbtip/mail.prg | 52 ++++++------- harbour/contrib/hbtip/popcln.prg | 12 +-- harbour/contrib/hbtip/sendmail.prg | 20 +++-- harbour/contrib/hbtip/sessid.prg | 2 +- harbour/contrib/hbtip/smtpcln.prg | 11 ++- harbour/contrib/hbtip/thtml.prg | 54 +++++++------- harbour/contrib/hbtip/url.prg | 6 +- 12 files changed, 193 insertions(+), 166 deletions(-) diff --git a/harbour/ChangeLog b/harbour/ChangeLog index f0a4bb3b94..b1e79a7850 100644 --- a/harbour/ChangeLog +++ b/harbour/ChangeLog @@ -8,6 +8,28 @@ 2008-12-31 13:59 UTC+0100 Foo Bar */ +2008-06-19 11:08 UTC+0200 Viktor Szakats (harbour.01 syenar hu) + * contrib/hbtip/cgi.prg + * contrib/hbtip/encoder.prg + * contrib/hbtip/ftpcln.prg + * contrib/hbtip/httpcln.prg + * contrib/hbtip/mail.prg + * contrib/hbtip/popcln.prg + * contrib/hbtip/sendmail.prg + * contrib/hbtip/sessid.prg + * contrib/hbtip/smtpcln.prg + * contrib/hbtip/thtml.prg + * contrib/hbtip/url.prg + * Some formatting, cleanups, <> -> != + + * contrib/hbtip/sendmail.prg + + hb_SendMail(): Added parameter. + + * contrib/hbtip/thtml.prg + ! Removed five remaining _SET_EXACT dependent + string comparisons. Exact comparisons were + used for all these cases, with a NOTE added. + 2008-06-19 02:25 UTC+0200 Viktor Szakats (harbour.01 syenar hu) * contrib/hbtip/common.mak ! Added missing sendmail.prg diff --git a/harbour/contrib/hbtip/cgi.prg b/harbour/contrib/hbtip/cgi.prg index 78d43d86ec..d8949f4b90 100644 --- a/harbour/contrib/hbtip/cgi.prg +++ b/harbour/contrib/hbtip/cgi.prg @@ -61,15 +61,15 @@ * */ -#include 'hbclass.ch' -#include 'tip.ch' -#include 'common.ch' -#include 'fileio.ch' +#include "hbclass.ch" +#include "tip.ch" +#include "common.ch" +#include "fileio.ch" #define CGI_IN 0 #define CGI_OUT 1 #define _CRLF chr(13)+chr(10) -#define _BR '
' +#define _BR "
" CLASS TIpCgi @@ -121,22 +121,22 @@ METHOD New() CLASS TIpCgi ::bSavedErrHandler := ErrorBlock( { |e| ::ErrHandler( e ) } ) - ::cCgiHeader := '' - ::cHtmlPage := '' + ::cCgiHeader := "" + ::cHtmlPage := "" - lPost := ( 'POST' $ Upper( getenv( 'REQUEST_METHOD' ) ) ) + lPost := ( "POST" $ Upper( getenv( "REQUEST_METHOD" ) ) ) if lPost - nLen := val( getenv( 'CONTENT_LENGTH' ) ) + nLen := val( getenv( "CONTENT_LENGTH" ) ) cTemp := space( nLen ) if ( ( nRead := fread( CGI_IN, @cTemp, nLen, 0 ) ) != nLen ) - ::ErrHandler( 'post error read ' + str( nRead ) + ' instead of ' + str( nLen ) ) + ::ErrHandler( "post error read " + str( nRead ) + " instead of " + str( nLen ) ) else ::HTTP_RAW_POST_DATA := cTemp - aTemp := HB_ATOKENS( cTemp, '&' ) + aTemp := HB_ATOKENS( cTemp, "&" ) nLen := Len( aTemp ) if nLen > 0 for nCount := 1 TO nLen - aVar := HB_ATOKENS( aTemp[ nCount ], '=' ) + aVar := HB_ATOKENS( aTemp[ nCount ], "=" ) if Len( aVar ) == 2 ::hPosts[ alltrim( TipEncoderUrl_Decode( aVar[ 1 ] ) ) ] := TipEncoderUrl_Decode( aVar[ 2 ] ) endif @@ -144,13 +144,13 @@ METHOD New() CLASS TIpCgi endif endif else - cTemp := getenv( 'QUERY_STRING' ) + cTemp := getenv( "QUERY_STRING" ) if !empty( cTemp ) - aTemp := HB_ATOKENS( cTemp, '&' ) + aTemp := HB_ATOKENS( cTemp, "&" ) nLen := Len( aTemp ) if nLen > 0 for nCount := 1 TO nLen - aVar := HB_ATOKENS( aTemp[ nCount ], '=' ) + aVar := HB_ATOKENS( aTemp[ nCount ], "=" ) if Len( aVar ) == 2 ::hGets[ alltrim( TipEncoderUrl_Decode( aVar[ 1 ] ) ) ] := TipEncoderUrl_Decode( aVar[ 2 ] ) endif @@ -159,13 +159,13 @@ METHOD New() CLASS TIpCgi endif endif - cTemp := getenv( 'HTTP_COOKIE' ) + cTemp := getenv( "HTTP_COOKIE" ) if !empty( cTemp ) - aTemp := HB_ATOKENS( cTemp, ';' ) + aTemp := HB_ATOKENS( cTemp, ";" ) nLen := Len( aTemp ) if nLen > 0 for nCount := 1 TO nLen - aVar := HB_ATOKENS( aTemp[ nCount ], '=' ) + aVar := HB_ATOKENS( aTemp[ nCount ], "=" ) if Len( aVar ) == 2 ::hCookies[ alltrim( TipEncoderUrl_Decode( aVar[ 1 ] ) ) ] := TipEncoderUrl_Decode( aVar[ 2 ] ) endif @@ -178,7 +178,7 @@ METHOD New() CLASS TIpCgi METHOD Header( cValue ) CLASS TIpCgi if empty( cValue ) - ::cCgiHeader += 'Content-Type: text/html' + _CRLF + ::cCgiHeader += "Content-Type: text/html" + _CRLF else ::cCgiHeader += cValue + _CRLF endif @@ -187,7 +187,7 @@ METHOD Header( cValue ) CLASS TIpCgi METHOD Redirect( cUrl ) CLASS TIpCgi - ::cCgiHeader += 'Location: ' + cUrl + _CRLF + ::cCgiHeader += "Location: " + cUrl + _CRLF RETURN Self @@ -210,7 +210,7 @@ METHOD Flush() CLASS TIpCgi local cSID := ::cSID local cSession - hb_hEval( ::hCookies, { |k,v| ::cCgiHeader += 'Set-Cookie: ' + k + '=' + v + ';' + _CRLF } ) + hb_hEval( ::hCookies, { |k,v| ::cCgiHeader += "Set-Cookie: " + k + "=" + v + ";" + _CRLF } ) cStream := ::cCgiHeader + _CRLF + ::cHtmlPage + _CRLF @@ -228,8 +228,8 @@ METHOD Flush() CLASS TIpCgi fclose( nH ) endif - ::cCgiHeader := '' - ::cHtmlPage := '' + ::cCgiHeader := "" + ::cHtmlPage := "" if !empty( cSID ) @@ -271,10 +271,10 @@ METHOD DestroySession( cID ) CLASS TIpCgi if !( lRet := ( FErase( cFile ) == 0 ) ) ::Print( "ERROR: On deleting session file : " + cFile + ", File error : " + hb_cStr( FError() ) ) else - ::hCookies[ 'SESSIONID' ] := cSID + "; expires= " + TIP_DateToGMT( DATE() - 1 ) + ::hCookies[ "SESSIONID" ] := cSID + "; expires= " + TIP_DateToGMT( DATE() - 1 ) ::CreateSID() cSID := ::cSID - ::hCookies[ 'SESSIONID' ] := cSID + ::hCookies[ "SESSIONID" ] := cSID endif endif @@ -389,11 +389,11 @@ METHOD StartSession( cSID ) CLASS TIpCgi if empty( cSID ) - if ( nH := hb_HPos( ::hGets, 'SESSIONID' ) ) != 0 + if ( nH := hb_HPos( ::hGets, "SESSIONID" ) ) != 0 cSID := hb_HValueAt( ::hGets, nH ) - elseif ( nH := hb_HPos( ::hPosts, 'SESSIONID' ) ) != 0 + elseif ( nH := hb_HPos( ::hPosts, "SESSIONID" ) ) != 0 cSID := hb_HValueAt( ::hPosts, nH ) - elseif ( nH := hb_HPos( ::hCookies, 'SESSIONID' ) ) != 0 + elseif ( nH := hb_HPos( ::hCookies, "SESSIONID" ) ) != 0 cSID := hb_HValueAt( ::hCookies, nH ) endif @@ -432,7 +432,7 @@ METHOD StartSession( cSID ) CLASS TIpCgi endif - ::hCookies[ 'SESSIONID' ] := ::cSID + ::hCookies[ "SESSIONID" ] := ::cSID RETURN Self @@ -448,9 +448,9 @@ METHOD SessionDecode( cData ) CLASS TIpCgi STATIC FUNCTION HtmlTag( xVal, cKey, cDefault ) - local cVal := '' + local cVal := "" - DEFAULT cDefault TO '' + DEFAULT cDefault TO "" if !empty( xVal ) .and. !empty( cKey ) if hb_hHasKey( xVal, cKey ) @@ -459,21 +459,21 @@ STATIC FUNCTION HtmlTag( xVal, cKey, cDefault ) endif endif - if cVal == '' + if cVal == "" cVal := cDefault endif - if !( cVal == '' ) - cVal := '<' + cKey + '>' + cVal + '' + if !( cVal == "" ) + cVal := "<" + cKey + ">" + cVal + "" endif return cVal STATIC FUNCTION HtmlAllTag( hTags, cSep ) - local cVal := '' + local cVal := "" - DEFAULT cSep TO ' ' + DEFAULT cSep TO " " hb_hEval( hTags, { |k| cVal += HtmlTag( hTags, k ) + cSep } ) @@ -481,7 +481,7 @@ STATIC FUNCTION HtmlAllTag( hTags, cSep ) STATIC FUNCTION HtmlOption( xVal, cKey, cPre, cPost, lScan ) - local cVal := '' + local cVal := "" if !empty( xVal ) if empty( cKey ) @@ -505,9 +505,9 @@ STATIC FUNCTION HtmlOption( xVal, cKey, cPre, cPost, lScan ) STATIC FUNCTION HtmlAllOption( hOptions, cSep ) - local cVal := '' + local cVal := "" - DEFAULT cSep TO ' ' + DEFAULT cSep TO " " if !empty( hOptions ) hb_hEval( hOptions, { |k| cVal += HtmlOption( hOptions, k,,, .t. ) + cSep } ) @@ -517,9 +517,9 @@ STATIC FUNCTION HtmlAllOption( hOptions, cSep ) STATIC FUNCTION HtmlValue( xVal, cKey, cDefault ) - local cVal := '' + local cVal := "" - DEFAULT cDefault TO '' + DEFAULT cDefault TO "" if !empty( xVal ) .and. !empty( cKey ) if hb_hHasKey( xVal, cKey ) @@ -528,7 +528,7 @@ STATIC FUNCTION HtmlValue( xVal, cKey, cDefault ) endif endif - if cVal == '' + if cVal == "" cVal := cDefault endif @@ -536,9 +536,9 @@ STATIC FUNCTION HtmlValue( xVal, cKey, cDefault ) STATIC FUNCTION HtmlAllValue( hValues, cSep ) - local cVal := '' + local cVal := "" - DEFAULT cSep TO ' ' + DEFAULT cSep TO " " if !empty( hValues ) hb_hEval( hValues, { |k| cVal += HtmlValue( hValues, k ) + cSep } ) @@ -548,34 +548,34 @@ STATIC FUNCTION HtmlAllValue( hValues, cSep ) STATIC FUNCTION HtmlScript( xVal, cKey ) - local cVal := '' + local cVal := "" local nPos local cTmp - DEFAULT cKey TO 'script' + DEFAULT cKey TO "script" if !empty( xVal ) if ( nPos := hb_HPos( xVal, cKey ) ) != 0 cVal := hb_HValueAt( xVal, nPos ) if valtype( cVal ) == "H" - if ( nPos := hb_HPos( cVal, 'src' ) ) != 0 + if ( nPos := hb_HPos( cVal, "src" ) ) != 0 cVal := hb_HValueAt( cVal, nPos ) if valtype( cVal ) == "C" cVal := { cVal } endif if valtype( cVal ) == "A" - cTmp := '' + cTmp := "" ascan( cVal, { |cFile| cTmp += '' + _CRLF endif @@ -589,34 +589,34 @@ STATIC FUNCTION HtmlScript( xVal, cKey ) STATIC FUNCTION HtmlStyle( xVal, cKey ) - local cVal := '' + local cVal := "" local nPos local cTmp - DEFAULT cKey TO 'style' + DEFAULT cKey TO "style" if !empty( xVal ) if ( nPos := hb_HPos( xVal, cKey ) ) != 0 cVal := hb_HValueAt( xVal, nPos ) if valtype( cVal ) == "H" - if ( nPos := hb_HPos( cVal, 'src' ) ) != 0 + if ( nPos := hb_HPos( cVal, "src" ) ) != 0 cVal := hb_HValueAt( cVal, nPos ) if valtype( cVal ) == "C" cVal := { cVal } endif if valtype( cVal ) == "A" - cTmp := '' + cTmp := "" ascan( cVal, { |cFile| cTmp += '' + _CRLF } ) cVal := cTmp endif endif - if ( nPos := hb_HPos( cVal, 'var' ) ) != 0 + if ( nPos := hb_HPos( cVal, "var" ) ) != 0 cVal := hb_HValueAt( cVal, nPos ) if valtype( cVal ) == "C" cVal := { cVal } endif if valtype( cVal ) == "A" - cTmp := '' + cTmp := "" ascan( cVal, { |cVar| cTmp += cVar } ) cVal := '' + _CRLF endif @@ -627,5 +627,3 @@ STATIC FUNCTION HtmlStyle( xVal, cKey ) endif return cVal - - diff --git a/harbour/contrib/hbtip/encoder.prg b/harbour/contrib/hbtip/encoder.prg index 1deb9ccd24..b9e566257c 100644 --- a/harbour/contrib/hbtip/encoder.prg +++ b/harbour/contrib/hbtip/encoder.prg @@ -69,7 +69,7 @@ FUNCTION TIp_GetEncoder( cModel ) LOCAL oEncoder - IF Valtype( cModel ) <> "C" + IF !( Valtype( cModel ) == "C" ) cModel := "as-is" ENDIF @@ -108,7 +108,7 @@ ENDCLASS METHOD New( cModel ) class TIPEncoder - IF Valtype( cModel ) <> "C" + IF !( Valtype( cModel ) == "C" ) cModel := "as-is" ENDIF ::cName := cModel diff --git a/harbour/contrib/hbtip/ftpcln.prg b/harbour/contrib/hbtip/ftpcln.prg index ef2282b9e4..aba3543077 100644 --- a/harbour/contrib/hbtip/ftpcln.prg +++ b/harbour/contrib/hbtip/ftpcln.prg @@ -237,14 +237,14 @@ METHOD GetReply() CLASS tIPClientFTP RETURN .F. ENDIF - // now, if the reply has a '-' as fourth character, we need to proceed... - DO WHILE .not. Empty(cRep) .and. SubStr( cRep, 4, 1 ) == '-' + // now, if the reply has a "-" as fourth character, we need to proceed... + DO WHILE .not. Empty(cRep) .and. SubStr( cRep, 4, 1 ) == "-" ::cReply := ::InetRecvLine( ::SocketCon, @nLen, 128 ) cRep := IIf(ValType(::cReply) == "C", ::cReply, "") ENDDO // 4 and 5 are error codes - IF ::InetErrorCode( ::SocketCon ) != 0 .or. SubStr( ::cReply, 1, 1) >= '4' + IF ::InetErrorCode( ::SocketCon ) != 0 .or. SubStr( ::cReply, 1, 1) >= "4" RETURN .F. ENDIF RETURN .T. @@ -299,7 +299,7 @@ RETURN ::GetReply() METHOD Rest( nPos ) CLASS tIPClientFTP - ::InetSendall( ::SocketCon, "REST " + alltrim( Str( If( Empty( nPos ), 0, nPos ) ) ) + ::cCRLF ) + ::InetSendall( ::SocketCon, "REST " + alltrim( Str( iif( Empty( nPos ), 0, nPos ) ) ) + ::cCRLF ) RETURN ::GetReply() @@ -384,9 +384,9 @@ METHOD List( cSpec ) CLASS tIPClientFTP LOCAL cStr IF cSpec == nil - cSpec := '' + cSpec := "" ELSE - cSpec := ' ' + cSpec + cSpec := " " + cSpec ENDIF IF ::bUsePasv IF .not. ::Pasv() @@ -611,10 +611,10 @@ METHOD MGET( cSpec,cLocalPath ) CLASS tIPClientFTP LOCAL cStr,cfile,aFiles IF cSpec == nil - cSpec := '' + cSpec := "" ENDIF IF cLocalPath=nil - cLocalPath:='' + cLocalPath:="" ENDIF IF ::bUsePasv IF .not. ::Pasv() @@ -627,7 +627,7 @@ METHOD MGET( cSpec,cLocalPath ) CLASS tIPClientFTP cStr := ::ReadAuxPort() IF !empty(cStr) - aFiles:=hb_atokens(strtran(cStr,chr(13),''),chr(10)) + aFiles:=hb_atokens(strtran(cStr,chr(13),""),chr(10)) FOR each cFile in aFiles IF !Empty(cFile) //PM:09-08-2007 Needed because of the new HB_aTokens() ::downloadfile( cLocalPath+trim(cFile), trim(cFile) ) @@ -644,7 +644,7 @@ METHOD MPUT( cFileSpec, cAttr ) CLASS tIPClientFTP LOCAL nCount := 0 LOCAL cStr := "" - IF Valtype( cFileSpec ) <> "C" + IF !( Valtype( cFileSpec ) == "C" ) RETURN 0 ENDIF @@ -707,7 +707,7 @@ METHOD LS( cSpec ) CLASS tIPClientFTP LOCAL cStr IF cSpec == nil - cSpec := '' + cSpec := "" ENDIF IF ::bUsePasv .AND. ! ::Pasv() @@ -723,7 +723,7 @@ METHOD LS( cSpec ) CLASS tIPClientFTP IF ::GetReply() cStr := ::ReadAuxPort() ELSE - cStr := '' + cStr := "" ENDIF RETURN cStr @@ -815,7 +815,7 @@ METHOD listFiles( cFileSpec ) CLASS tIPClientFTP RETURN {} ENDIF - aList := HB_ATokens( StrTran( cList, Chr(13),''), Chr(10) ) + aList := HB_ATokens( StrTran( cList, Chr(13),""), Chr(10) ) FOR EACH cEntry IN aList diff --git a/harbour/contrib/hbtip/httpcln.prg b/harbour/contrib/hbtip/httpcln.prg index d20ce14838..8879969eb4 100644 --- a/harbour/contrib/hbtip/httpcln.prg +++ b/harbour/contrib/hbtip/httpcln.prg @@ -356,7 +356,7 @@ RETURN cData METHOD ReadAll() CLASS tIPClientHTTP - local cOut:='', cChunk + local cOut:="", cChunk IF .not. ::bInitialized ::bInitialized := .T. IF .not. ::Get() @@ -382,12 +382,12 @@ METHOD setCookie(cLine) CLASS tIPClientHTTP local cDefaultHost:=::oUrl:cServer, cDefaultPath:=::oUrl:cPath local x,y IF empty(cDefaultPath) - cDefaultPath:='/' + cDefaultPath:="/" ENDIF //this function currently ignores expires, secure and other tags that may be in the cookie for now... -// ?'Setting COOKIE:',cLine +// ?"Setting COOKIE:",cLine aParam := HB_RegexSplit( ";", cLine ) - cName:=cValue:='' + cName:=cValue:="" cHost:=cDefaultHost cPath:=cDefaultPath y:=len(aParam) @@ -400,10 +400,10 @@ METHOD setCookie(cLine) CLASS tIPClientHTTP else cElement:=upper(alltrim(aElements[1])) do case - //case cElement=='EXPIRES' - case cElement=='PATH' + //case cElement=="EXPIRES" + case cElement=="PATH" cPath:=alltrim(aElements[2]) - case cElement=='DOMAIN' + case cElement=="DOMAIN" cHost:=alltrim(aElements[2]) endcase ENDIF @@ -424,14 +424,14 @@ return NIL METHOD getcookies(cHost,cPath) CLASS tIPClientHTTP local x,y,aDomKeys:={},aKeys,z,cKey,aPathKeys,nPath - local a,b,cOut:='',c,d + local a,b,cOut:="",c,d IF cHost=nil cHost:=::oUrl:cServer ENDIF IF cPath=nil cPath:=::oUrl:cPath IF empty(cPath) - cPath:='/' + cPath:="/" ENDIF ENDIF IF empty(cHost) @@ -445,7 +445,7 @@ METHOD getcookies(cHost,cPath) CLASS tIPClientHTTP cHost:=upper(cHost) FOR x := 1 TO y cKey:=upper(aKeys[x]) - IF upper(right(cKey,z))==cHost.and.(len(cKey)=z .OR. substr(aKeys[x],0-z,1)=='.') + IF upper(right(cKey,z))==cHost.and.(len(cKey)=z .OR. substr(aKeys[x],0-z,1)==".") aadd(aDomKeys,aKeys[x]) ENDIF NEXT @@ -461,7 +461,7 @@ METHOD getcookies(cHost,cPath) CLASS tIPClientHTTP FOR a:= 1 TO b cKey:=aKeys[a] z:=len(cKey) - IF cKey=='/'.or.(z<=nPath.and.substr(cKey,1,nPath)==cKey) + IF cKey=="/".or.(z<=nPath.and.substr(cKey,1,nPath)==cKey) aadd(aPathKeys,aKeys[a]) ENDIF NEXT @@ -472,9 +472,9 @@ METHOD getcookies(cHost,cPath) CLASS tIPClientHTTP d:=len(aKeys) FOR c := 1 TO d IF !empty(cOut) - cOut+='; ' + cOut+="; " ENDIF - cOut+=aKeys[c]+'='+::hCookies[aDomKeys[x]][aPathKeys[a]][aKeys[c]] + cOut+=aKeys[c]+"="+::hCookies[aDomKeys[x]][aPathKeys[a]][aKeys[c]] NEXT NEXT NEXT @@ -497,13 +497,13 @@ METHOD Boundary(nType) CLASS tIPClientHTTP nType=0 ENDIF IF empty(cBound) - cBound:=replicate('-',27)+space(11) + cBound:=replicate("-",27)+space(11) FOR i := 28 TO 38 cBound := Stuff( cBound, i, 1, str(int(HB_Random(0, 9 )),1,0) ) NEXT ::cBoundary:=cBound endif - cBound:=if(nType<2,'--','')+cBound+if(nType=1,'--','') + cBound:=iif(nType<2,"--","")+cBound+if(nType=1,"--","") RETURN(cBound) METHOD Attach(cName,cFileName,cType) CLASS tIPClientHTTP @@ -553,7 +553,7 @@ METHOD PostMultiPart( cPostData, cQuery ) CLASS tIPClientHTTP cName:=oSub[1] cFile:=oSub[2] cType:=oSub[3] - cTmp:=strtran(cFile,'/','\') + cTmp:=strtran(cFile,"/","\") if ( nPos := rat( "\", cTmp ) ) != 0 cFilePath := substr( cTmp, 1, nPos ) elseif ( nPos := rat( ":", cTmp ) ) != 0 @@ -563,7 +563,7 @@ METHOD PostMultiPart( cPostData, cQuery ) CLASS tIPClientHTTP endif cTmp:=substr(cFile,Len(cFilePath)+1) IF empty(cType) - cType:='text/html' + cType:="text/html" ENDIF cData += cBound+cCrlf+'Content-Disposition: form-data; name="'+cName +'"; filename="'+cTmp+'"'+cCrlf+'Content-Type: '+cType+cCrLf+cCrLf //hope this is not a big file.... @@ -584,7 +584,7 @@ METHOD PostMultiPart( cPostData, cQuery ) CLASS tIPClientHTTP fClose(nFile) cData+=cCrlf NEXT - cData+=cBound+'--'+cCrlf + cData+=cBound+"--"+cCrlf IF .not. HB_IsString( cQuery ) cQuery := ::oUrl:BuildQuery() ENDIF diff --git a/harbour/contrib/hbtip/mail.prg b/harbour/contrib/hbtip/mail.prg index 14df1881e8..757c8cd5cc 100644 --- a/harbour/contrib/hbtip/mail.prg +++ b/harbour/contrib/hbtip/mail.prg @@ -250,7 +250,7 @@ METHOD Attach( oSubPart ) CLASS TipMail IF HB_IsObject( oSubPart ) .and. oSubPart:ClassName == "TIPMAIL" // reset wrong content-type IF At( "multipart/", Lower( ::GetFieldPart("Content-Type")) ) == 0 - ::hHeaders["Content-Type"] := "multipart/mixed" + ::hHeaders[ "Content-Type" ] := "multipart/mixed" ENDIF AAdd( ::aAttachments, oSubPart ) @@ -287,13 +287,13 @@ METHOD ToString() CLASS TipMail LOCAL cRet := "" // this is a multipart message; we need a boundary IF Len( ::aAttachments ) > 0 - ::hHeaders["Mime-Version"] :="1.0" + ::hHeaders[ "Mime-Version" ] :="1.0" endif IF Len( ::aAttachments ) > 0 //Reset failing content type IF At( "multipart/", Lower( ::GetFieldPart("Content-Type")) ) == 0 - ::hHeaders["Content-Type"] := "multipart/mixed" + ::hHeaders[ "Content-Type" ] := "multipart/mixed" ENDIF // have we got it already? @@ -310,29 +310,29 @@ METHOD ToString() CLASS TipMail // Begin output the fields // Presenting them in a "well-known" order IF "Return-Path" $ ::hHeaders - cRet+= "Return-Path: "+::hHeaders[ "Return-Path"] + e"\r\n" + cRet += "Return-Path: "+::hHeaders[ "Return-Path" ] + e"\r\n" ENDIF IF "Delivered-To" $ ::hHeaders - cRet+= "Delivered-To: "+::hHeaders[ "Delivered-To"] + e"\r\n" + cRet += "Delivered-To: "+::hHeaders[ "Delivered-To" ] + e"\r\n" ENDIF FOR EACH cElem IN ::aReceived - cRet+= "Received: "+ cElem+ e"\r\n" + cRet += "Received: "+ cElem+ e"\r\n" NEXT IF "Date" $ ::hHeaders - cRet+= "Date: "+::hHeaders[ "Date"] + e"\r\n" + cRet += "Date: "+::hHeaders[ "Date" ] + e"\r\n" ENDIF IF "From" $ ::hHeaders - cRet+= "From: "+::hHeaders[ "From"] + e"\r\n" + cRet += "From: "+::hHeaders[ "From" ] + e"\r\n" ENDIF IF "To" $ ::hHeaders - cRet+= "To: "+::hHeaders[ "To"] + e"\r\n" + cRet += "To: "+::hHeaders[ "To" ] + e"\r\n" ENDIF IF "Subject" $ ::hHeaders - cRet+= "Subject: "+ ::hHeaders[ "Subject"] + e"\r\n" + cRet += "Subject: "+ ::hHeaders[ "Subject" ] + e"\r\n" + ENDIF + IF Len( ::aAttachments ) > 0 + cRet += "Mime-Version:" + ::hHeaders[ "Mime-Version" ] + e"\r\n" ENDIF - IF Len( ::aAttachments ) > 0 - cRet+= "Mime-Version:" + ::hHeaders["Mime-Version"] + e"\r\n" - endif FOR i := 1 TO Len( ::hHeaders ) cElem := Lower(hb_HKeyAt( ::hHeaders, i )) @@ -354,8 +354,8 @@ METHOD ToString() CLASS TipMail //Body IF .not. Empty( ::cBody ) IF empty(::aAttachments) - //cRet += ::cBody +if(lAttachment,'', e"\r\n") - cRet += ::cBody + if(::lBodyEncoded,'', e"\r\n") + //cRet += ::cBody +iif(lAttachment,"", e"\r\n") + cRet += ::cBody + iif(::lBodyEncoded,"", e"\r\n") else //GD - if there are attachements the body of the message has to be treated as an attachment. cRet += "--" + cBoundary + e"\r\n" @@ -438,7 +438,7 @@ METHOD FromString( cMail, cBoundary, nPos ) CLASS TipMail // boundary. IF "Content-Transfer-Encoding" $ ::hHeaders - ::oEncoder := TIp_GetEncoder( ::hHeaders["Content-Transfer-Encoding"] ) + ::oEncoder := TIp_GetEncoder( ::hHeaders[ "Content-Transfer-Encoding" ] ) ENDIF // se if we have subparts: @@ -534,11 +534,11 @@ RETURN cBound METHOD setHeader( cSubject, cFrom, cTo, cCC, cBCC ) CLASS TipMail LOCAL aTo, aCC, aBCC, i, imax - IF Valtype( csubject ) <> "C" + IF !( Valtype( csubject ) == "C" ) cSubject := "" ENDIF - IF Valtype( cFrom ) <> "C" + IF !( Valtype( cFrom ) == "C" ) RETURN .F. ENDIF @@ -582,7 +582,7 @@ METHOD setHeader( cSubject, cFrom, cTo, cCC, cBCC ) CLASS TipMail RETURN .F. ENDIF - IF aCC <> NIL + IF aCC != NIL cCC := aCC[1] imax := Len( aCC ) FOR i:=2 TO imax @@ -594,7 +594,7 @@ METHOD setHeader( cSubject, cFrom, cTo, cCC, cBCC ) CLASS TipMail ENDIF ENDIF - IF aBCC <> NIL + IF aBCC != NIL cBCC := aBCC[1] imax := Len( aBCC ) FOR i:=2 TO imax @@ -638,7 +638,7 @@ METHOD detachFile( cPath ) CLASS TipMail LOCAL cDelim := HB_OsPathSeparator() LOCAL nFileHandle - IF EMpty( cFileName ) + IF Empty( cFileName ) RETURN .F. ENDIF @@ -647,22 +647,22 @@ METHOD detachFile( cPath ) CLASS TipMail ENDIF nFileHandle := FCreate( cFileName ) - IF FError() <> 0 + IF FError() != 0 RETURN .F. ENDIF FWrite( nFileHandle, cContent ) FClose( nFileHandle ) -RETURN ( FError() == 0 ) +RETURN FError() == 0 METHOD getFileName() CLASS TipMail -RETURN StrTran( ::getFieldOption( "Content-Type", "name" ), '"', '' ) +RETURN StrTran( ::getFieldOption( "Content-Type", "name" ), '"', "" ) METHOD isMultiPart CLASS TipMail -RETURN ( "multipart/" $ Lower( ::GetFieldPart("Content-Type")) ) +RETURN "multipart/" $ Lower( ::GetFieldPart("Content-Type")) METHOD getMultiParts( aParts ) CLASS TipMail @@ -674,7 +674,7 @@ METHOD getMultiParts( aParts ) CLASS TipMail aParts := {} ENDIF - DO WHILE ( oSubPart := ::nextAttachment() ) <> NIL + DO WHILE ( oSubPart := ::nextAttachment() ) != NIL lReset := .T. AAdd( aParts, oSubPart ) IF oSubPart:countAttachments() > 0 diff --git a/harbour/contrib/hbtip/popcln.prg b/harbour/contrib/hbtip/popcln.prg index a35033ae05..0abb9de8e4 100644 --- a/harbour/contrib/hbtip/popcln.prg +++ b/harbour/contrib/hbtip/popcln.prg @@ -133,7 +133,7 @@ METHOD GetOk() CLASS tIPClientPOP LOCAL nLen ::cReply := ::InetRecvLine( ::SocketCon, @nLen, 128 ) - IF ::InetErrorCode( ::SocketCon ) != 0 .or. !( SubStr( ::cReply, 1, 1 ) == '+' ) + IF ::InetErrorCode( ::SocketCon ) != 0 .or. !( SubStr( ::cReply, 1, 1 ) == "+" ) RETURN .F. ENDIF RETURN .T. @@ -318,7 +318,7 @@ METHOD Retrieve( nId, nLen ) CLASS tIPClientPOP otherwise if response breaks EOM in two, it will never be found */ - IF ( nPos := hb_At( cEOM, cRet, Max( nRetLen - Len( cEOM ), 1 ) ) ) <> 0 + IF ( nPos := hb_At( cEOM, cRet, Max( nRetLen - Len( cEOM ), 1 ) ) ) != 0 // Remove ".CRLF" cRet := Left( cRet, nPos + 1 ) ::bEof := .T. @@ -337,7 +337,7 @@ METHOD Retrieve( nId, nLen ) CLASS tIPClientPOP RETURN NIL ENDIF - // Remove byte-stuffed termination octet(s) if any + // Remove byte-stuffed termination octet(s) if any RETURN StrTran( cRet, ::cCRLF + "..", ::cCRLF + "." ) @@ -352,7 +352,7 @@ METHOD countMail CLASS TIpClientPop LOCAL aMails IF ::isOpen ::reset() - aMails := HB_ATokens( StrTran( ::list(), Chr(13),''), Chr(10) ) + aMails := HB_ATokens( StrTran( ::list(), Chr(13),""), Chr(10) ) RETURN Len( aMails ) ENDIF RETURN -1 @@ -361,7 +361,7 @@ RETURN -1 METHOD retrieveAll( lDelete ) LOCAL aMails, i, imax, cMail - IF Valtype( lDelete ) <> "L" + IF !( Valtype( lDelete ) == "L" ) lDelete := .F. ENDIF @@ -384,4 +384,4 @@ METHOD retrieveAll( lDelete ) ENDIF NEXT -RETURN aMails \ No newline at end of file +RETURN aMails diff --git a/harbour/contrib/hbtip/sendmail.prg b/harbour/contrib/hbtip/sendmail.prg index aebc703846..c0a7f72650 100644 --- a/harbour/contrib/hbtip/sendmail.prg +++ b/harbour/contrib/hbtip/sendmail.prg @@ -56,7 +56,7 @@ #translate ( LIKE ) => ( HB_REGEXLIKE( (), () ) ) -FUNCTION HB_SendMail( cServer, nPort, cFrom, aTo, aCC, aBCC, cBody, cSubject, aFiles, cUser, cPass, cPopServer, nPriority, lRead, lTrace, lPopAuth, lNoAuth, nTimeOut) +FUNCTION HB_SendMail( cServer, nPort, cFrom, aTo, aCC, aBCC, cBody, cSubject, aFiles, cUser, cPass, cPopServer, nPriority, lRead, lTrace, lPopAuth, lNoAuth, nTimeOut, cReplyTo ) /* cServer -> Required. IP or domain name of the mail server nPort -> Optional. Port used my email server @@ -75,6 +75,7 @@ FUNCTION HB_SendMail( cServer, nPort, cFrom, aTo, aCC, aBCC, cBody, cSubject, aF lTrace -> Optional. If set to .T., a log file is created (sendmail.log). Standard setting is .F. lNoAuth -> Optional. Disable Autentication methods nTimeOut -> Optional. Number os ms to wait default 20000 (20s) + cReplyTo -> Optional. */ LOCAL oInMail, cBodyTemp, oUrl, oMail, oAttach, aThisFile, cFile, cFname, cFext, cData, oUrl1 @@ -91,6 +92,7 @@ FUNCTION HB_SendMail( cServer, nPort, cFrom, aTo, aCC, aBCC, cBody, cSubject, aF LOCAL lAuthPlain := .F. LOCAL lConnect := .T. LOCAL oPop + DEFAULT cUser TO "" DEFAULT cPass TO "" DEFAULT nPort TO 25 @@ -98,9 +100,10 @@ FUNCTION HB_SendMail( cServer, nPort, cFrom, aTo, aCC, aBCC, cBody, cSubject, aF DEFAULT nPriority TO 3 DEFAULT lRead TO .F. DEFAULT lTrace TO .F. - DEFAULT lPopAuth to .T. - DEFAULT lNoAuth TO .F. - DEFAULT nTimeOut to 100 + DEFAULT lPopAuth TO .T. + DEFAULT lNoAuth TO .F. + DEFAULT nTimeOut TO 100 + DEFAULT cReplyTo TO "" cUser := StrTran( cUser, "@", "&at;" ) @@ -175,9 +178,9 @@ FUNCTION HB_SendMail( cServer, nPort, cFrom, aTo, aCC, aBCC, cBody, cSubject, aF ENDIF BEGIN SEQUENCE - oUrl := tUrl():New( "smtp://" + cUser + "@" + cServer + '/' + cTo ) + oUrl := tUrl():New( "smtp://" + cUser + "@" + cServer + "/" + cTo ) RECOVER - lReturn := .F. + lReturn := .F. END IF !lReturn @@ -203,7 +206,7 @@ FUNCTION HB_SendMail( cServer, nPort, cFrom, aTo, aCC, aBCC, cBody, cSubject, aF oAttach:SetBody( cBody ) oMail:Attach( oAttach ) - oUrl:cFile := cTo + If( Empty(cCC), "", "," + cCC ) + If( Empty(cBCC), "", "," + cBCC) + oUrl:cFile := cTo + iif( Empty(cCC), "", "," + cCC ) + iif( Empty(cBCC), "", "," + cBCC) oMail:hHeaders[ "Date" ] := tip_Timestamp() oMail:hHeaders[ "From" ] := cFrom @@ -214,6 +217,9 @@ FUNCTION HB_SendMail( cServer, nPort, cFrom, aTo, aCC, aBCC, cBody, cSubject, aF IF !Empty(cBCC) oMail:hHeaders[ "Bcc" ] := cBCC ENDIF + IF !Empty(cReplyTo) + oMail:hHeaders[ "Reply-To" ] := cReplyTo + ENDIF BEGIN SEQUENCE oInmail := tIPClientSMTP():New( oUrl, lTrace) diff --git a/harbour/contrib/hbtip/sessid.prg b/harbour/contrib/hbtip/sessid.prg index e0dabd80b7..15b3b20893 100644 --- a/harbour/contrib/hbtip/sessid.prg +++ b/harbour/contrib/hbtip/sessid.prg @@ -126,7 +126,7 @@ FUNCTION TIP_CHECKSID( cSID, cCRCKey ) cSIDCRC += SubStr( cCRCKey, Val( SubStr( cTemp, n, 1 ) ) + 1, 1 ) next - RETURN ( Right( cSID, 5 ) == cSIDCRC ) + RETURN Right( cSID, 5 ) == cSIDCRC FUNCTION TIP_DATETOGMT( dDate, cTime ) LOCAL cStr := "" diff --git a/harbour/contrib/hbtip/smtpcln.prg b/harbour/contrib/hbtip/smtpcln.prg index bc230f349c..825cda32ae 100644 --- a/harbour/contrib/hbtip/smtpcln.prg +++ b/harbour/contrib/hbtip/smtpcln.prg @@ -126,7 +126,7 @@ METHOD GetOk() CLASS tIPClientSMTP LOCAL nLen ::cReply := ::InetRecvLine( ::SocketCon, @nLen, 512 ) - IF ::InetErrorCode( ::SocketCon ) != 0 .or. Substr( ::cReply, 1, 1 ) == '5' + IF ::InetErrorCode( ::SocketCon ) != 0 .or. Substr( ::cReply, 1, 1 ) == "5" RETURN .F. ENDIF RETURN .T. @@ -193,14 +193,14 @@ RETURN ::getOk() METHOD AUTH( cUser, cPass) CLASS tIPClientSMTP - Local cs:='' + Local cs:="" Local cEncodedUser Local cEncodedPAss cUser := StrTran( cUser,"&at;", "@") cEncodedUser := alltrim(HB_BASE64(cuser,len(cuser))) - cEncodedPAss :=alltrim(HB_BASE64(cPass,len(cpass))) + cEncodedPAss := alltrim(HB_BASE64(cPass,len(cpass))) ::InetSendall( ::SocketCon, "AUTH LOGIN" +::ccrlf ) @@ -212,7 +212,7 @@ METHOD AUTH( cUser, cPass) CLASS tIPClientSMTP endif endif - return ( ::isAuth := ::GetOk() ) + return ::isAuth := ::GetOk() METHOD AuthPlain( cUser, cPass) CLASS tIPClientSMTP @@ -220,7 +220,7 @@ METHOD AuthPlain( cUser, cPass) CLASS tIPClientSMTP Local cen := HB_BASE64( cBase, 2 + Len( cUser ) + Len( cPass ) ) ::InetSendall( ::SocketCon, "AUTH PLAIN" + cen + ::cCrlf) - return ( ::isAuth := ::GetOk() ) + return ::isAuth := ::GetOk() METHOD Write( cData, nLen, bCommit ) CLASS tIPClientSMTP @@ -304,4 +304,3 @@ METHOD sendMail( oTIpMail ) CLASS TIpClientSmtp NEXT RETURN ::data( oTIpMail:toString() ) - diff --git a/harbour/contrib/hbtip/thtml.prg b/harbour/contrib/hbtip/thtml.prg index daa0dbf6b2..43878a73b4 100644 --- a/harbour/contrib/hbtip/thtml.prg +++ b/harbour/contrib/hbtip/thtml.prg @@ -143,7 +143,7 @@ METHOD new( cHtmlString ) CLASS THtmlDocument ' ' + hb_OSNewLine() +; '' - IF Valtype( cHtmlString ) <> "C" + IF !( Valtype( cHtmlString ) == "C" ) ::root := THtmlNode():new( cEmptyHtmlDoc ) ELSE IF .NOT. " 0 + IF FError() != 0 RETURN .F. ENDIF FWrite( nFileHandle, cHtml, Len(cHtml) ) FClose( nFileHandle ) ::changed := .F. -RETURN ( FError()==0 ) +RETURN FError() == 0 // builds a one dimensional array of all nodes contained in the HTML document @@ -450,14 +450,15 @@ METHOD MatchCriteria( oFound ) CLASS THtmlIteratorScan IF ::cValue != NIL xData := oFound:getAttributes() - IF hb_HScan( xData, {| xKey,cValue| HB_SYMBOL_UNUSED(xKey), Lower(::cValue) == Lower(cValue) }) == 0 + IF hb_HScan( xData, {| xKey, cValue | HB_SYMBOL_UNUSED(xKey), Lower(::cValue) == Lower(cValue) }) == 0 RETURN .F. ENDIF ENDIF IF ::cData != NIL xData := oFound:getText(" ") - IF Empty(xData) .OR. ( Alltrim(::cData) <> Alltrim(xData) ) + /* NOTE: != changed to !( == ) */ + IF Empty(xData) .OR. !( Alltrim(::cData) == Alltrim(xData) ) RETURN .F. ENDIF ENDIF @@ -663,7 +664,7 @@ RETURN hb_bitAnd( ::htmlTagType[2], CM_OPT ) > 0 // checks if this is a node (leafs contain no further nodes, e.g.
,
,_text_) METHOD isNode CLASS THtmlNode -RETURN ( Valtype( ::htmlContent ) == "A" .AND. Len( ::htmlContent ) > 0 ) +RETURN Valtype( ::htmlContent ) == "A" .AND. Len( ::htmlContent ) > 0 // checks if this is a block node that must be closed with an ending tag: eg:
,
    @@ -704,10 +705,10 @@ METHOD parseHtml( parser ) CLASS THtmlNode // ending tag of previous node cText := Lower( Alltrim( SubStr( CutStr( ">", @cText ), 3 ) ) ) oLastTag := oThisTag:parent - DO WHILE oLastTag <> NIL .AND. Lower( oLastTag:htmlTagName ) <> cText + DO WHILE oLastTag != NIL .AND. !( Lower( oLastTag:htmlTagName ) == cText ) /* NOTE: != changed to !( == ) */ oLastTag := oLastTag:parent ENDDO - IF oLastTag <> NIL + IF oLastTag != NIL oLastTag:htmlEndTagName := "/" + oLastTag:htmlTagName ENDIF @@ -743,7 +744,7 @@ METHOD parseHtml( parser ) CLASS THtmlNode ELSE oNextTag := oThisTag:parent - DO WHILE oNextTag <> NIL .AND. Lower( oNextTag:htmlTagName ) <> Lower( SubStr(cTagName,2) ) + DO WHILE oNextTag != NIL .AND. !( Lower( oNextTag:htmlTagName ) == Lower( SubStr(cTagName,2) ) ) /* NOTE: != changed to !( == ) */ oNextTag := oNextTag:parent ENDDO @@ -858,7 +859,7 @@ METHOD parseHtmlFixed( parser ) CLASS THtmlNode ENDIF // back to "<" - DO WHILE P_PREV( parser ) <> "<" ; ENDDO + DO WHILE !( P_PREV( parser ) == "<" ) ; ENDDO /* NOTE: != changed to !( == ) */ nEnd := parser:p_pos ::addNode( THtmlNode():new( self, "_text_", , SubStr( parser:p_Str, nStart, nEnd - nStart ) ) ) @@ -870,7 +871,7 @@ RETURN self // adds a new CHILD node to the current one METHOD addNode( oTHtmlNode ) CLASS THtmlNode - IF oTHtmlNode:parent <> NIL .AND. .NOT. oTHtmlNode:parent == self + IF oTHtmlNode:parent != NIL .AND. .NOT. oTHtmlNode:parent == self oTHtmlNode:delete() ENDIF @@ -879,7 +880,7 @@ METHOD addNode( oTHtmlNode ) CLASS THtmlNode AAdd( ::htmlContent, oTHtmlNode ) - IF ::root <> NIL .AND. ::root:_document <> NIL + IF ::root != NIL .AND. ::root:_document != NIL ::root:_document:changed := .T. ENDIF @@ -892,14 +893,14 @@ METHOD insertBefore( oTHtmlNode ) CLASS THtmlNode RETURN ::error( "Cannot insert before root node", ::className(), ":insertBefore()", EG_ARG, HB_AParams() ) ENDIF - IF oTHtmlNode:parent <> NIL .AND. .NOT. oTHtmlNode:parent == self + IF oTHtmlNode:parent != NIL .AND. .NOT. oTHtmlNode:parent == self oTHtmlNode:delete() ENDIF oTHtmlNode:parent := ::parent oTHtmlNode:root := ::root - IF ::root <> NIL .AND. ::root:_document <> NIL + IF ::root != NIL .AND. ::root:_document != NIL ::root:_document:changed := .T. ENDIF @@ -913,14 +914,14 @@ RETURN oTHtmlNode METHOD insertAfter( oTHtmlNode ) CLASS THtmlNode LOCAL nPos - IF oTHtmlNode:parent <> NIL .AND. .NOT. oTHtmlNode:parent == self + IF oTHtmlNode:parent != NIL .AND. .NOT. oTHtmlNode:parent == self oTHtmlNode:delete() ENDIF oTHtmlNode:parent := ::parent oTHtmlNode:root := ::root - IF ::root <> NIL .AND. ::root:_document <> NIL + IF ::root != NIL .AND. ::root:_document != NIL ::root:_document:changed := .T. ENDIF @@ -942,7 +943,7 @@ METHOD delete() CLASS THtmlNode RETURN self ENDIF - IF ::root <> NIL .AND. ::root:_document <> NIL + IF ::root != NIL .AND. ::root:_document != NIL ::root:_document:changed := .T. ENDIF @@ -958,7 +959,7 @@ RETURN self // returns first node in subtree (.F.) or first node of entire tree (.T.) METHOD firstNode( lRoot ) CLASS THtmlNode - IF Valtype( lRoot ) <> "L" + IF !( Valtype( lRoot ) == "L" ) lRoot := .F. ENDIF @@ -974,7 +975,7 @@ RETURN IIF( Empty(::htmlContent), NIL, ::htmlContent[1] ) // returns last node in subtree (.F.) or last node of entire tree (.T.) METHOD lastNode( lRoot ) CLASS THtmlNode LOCAL aNodes - IF Valtype( lRoot ) <> "L" + IF !( Valtype( lRoot ) == "L" ) lRoot := .F. ENDIF IF ::htmlTagName == "_text_" @@ -992,7 +993,8 @@ METHOD nextNode() CLASS THtmlNode RETURN ::htmlContent[1] ENDIF - IF ::htmlTagName <> "_text_" .AND. .NOT. Empty( ::htmlContent ) + /* NOTE: != changed to !( == ) */ + IF !( ::htmlTagName == "_text_" ) .AND. .NOT. Empty( ::htmlContent ) RETURN ::htmlContent[1] ENDIF @@ -1073,11 +1075,11 @@ METHOD toString( nIndent ) CLASS THtmlNode cHtml += ::htmlContent ENDIF - IF ::htmlEndTagName <> NIL + IF ::htmlEndTagName != NIL IF ::isInline() .OR. ::keepFormatting() .OR. ::isType( CM_HEADING ) .OR. ::isType( CM_HEAD ) RETURN cHtml += IIf( ::htmlEndTagName == "/", " />", "<" + ::htmlEndTagName + ">" ) ENDIF - IF Right( cHtml, 1 ) <> Chr(10) + IF !( Right( cHtml, 1 ) == Chr(10) ) cHtml += Chr(13)+Chr(10) ENDIF RETURN cHtml += cIndent + IIf( ::htmlEndTagName == "/", " />", "<" + ::htmlEndTagName + ">" ) @@ -1221,7 +1223,7 @@ METHOD getAttribute( cName ) CLASS THtmlNode LOCAL hHash := ::getAttributes() LOCAL cValue - IF Valtype( hHash ) <> "H" + IF !( Valtype( hHash ) == "H" ) RETURN hHash ENDIF @@ -1363,7 +1365,7 @@ METHOD setAttribute( cName, cValue ) CLASS THtmlNode LOCAL nType LOCAL hHash := ::getAttributes() - IF Valtype( hHash ) <> "H" + IF !( Valtype( hHash ) == "H" ) // Tag doesn't have any attribute RETURN ::error( "Invalid HTML attribute for: <" + ::htmlTagName + ">", ::className(), cName, EG_ARG, {cName, cValue} ) ENDIF @@ -1399,7 +1401,7 @@ RETURN ::getAttributes() METHOD delAttribute( cName ) CLASS THtmlNode LOCAL xVal := ::getAttribute( cName ) LOCAL lRet := .F. - IF xVal <> NIL + IF xVal != NIL BEGIN SEQUENCE WITH {|oErr| Break( oErr )} hb_HDel( ::htmlAttributes, cName ) lRet := .T. @@ -1636,7 +1638,7 @@ FUNCTION THtmlIsValid( cTagName, cAttrName ) BEGIN SEQUENCE WITH {|oErr| Break( oErr )} aValue := shTagTypes[ cTagName ] - IF cAttrName <> NIL + IF cAttrName != NIL aValue := HB_Exec( aValue[1] ) lRet := ( Ascan( aValue, {|a| Lower(a[1]) == Lower( cAttrName ) } ) > 0 ) ENDIF diff --git a/harbour/contrib/hbtip/url.prg b/harbour/contrib/hbtip/url.prg index 8f3678dd7a..d3fe1cdb4b 100644 --- a/harbour/contrib/hbtip/url.prg +++ b/harbour/contrib/hbtip/url.prg @@ -114,7 +114,7 @@ METHOD SetAddress( cUrl ) CLASS tURL // TOPLEVEL url parsing aMatch:= HB_Regex( ::cREuri, cUrl ) - //May fail + // May fail IF Empty( aMatch ) RETURN .F. ENDIF @@ -200,7 +200,7 @@ METHOD BuildQuery( ) CLASS tURL RETURN cLine METHOD AddGetForm( cPostData ) - LOCAL cData:='', nI, cTmp,y, cRet + LOCAL cData:="", nI, cTmp,y, cRet IF HB_IsHash( cPostData ) FOR nI := 1 TO Len( cPostData ) @@ -239,7 +239,7 @@ METHOD AddGetForm( cPostData ) ENDIF IF !empty(cData) - cRet := ::cQuery+=if(empty(::cQuery),'','&')+cData + cRet := ::cQuery += iif(empty(::cQuery),"","&") + cData ENDIF RETURN cRet