Zum Inhalt springen

Modul:URLutil: Unterschied zwischen den Versionen

update
w>PerfektesChaos
(Mehr Funktionen)
w>PerfektesChaos
(update)
Zeile 1: Zeile 1:
--[=[ URLutil 2013-04-17
--[=[ URLutil 2013-04-18
Utilities for URL etc. on www.
Utilities for URL etc. on www.
* getAuthority()
* getAuthority()
Zeile 13: Zeile 13:
* isMailAddress()
* isMailAddress()
* isMailLink()
* isMailLink()
* isProtocolDialog
* isProtocolWiki
* isProtocolWiki
* isRessourceURL()
* isRessourceURL()
Zeile 207: Zeile 208:




function _isPort( port )
local function isProtocolAccepted( prot, supplied )
    if type( port ) == "string" then
        if port:find( "^%s*:[1-9][0-9]*%s*$" ) then
            return true  -- maybe numeric > 0
        end
    end
    return false
end -- _isPort()
 
 
 
function _isProtocolWiki( prot )
     if type( prot ) == "string" then
     if type( prot ) == "string" then
         local scheme, colon, slashes = mw.ustring.match( prot, "^%s*([a-zA-Z]*)(:?)(/?/?)%s*$" )
         local scheme, colon, slashes = mw.ustring.match( prot, "^%s*([a-zA-Z]*)(:?)(/?/?)%s*$" )
Zeile 227: Zeile 217:
                 end
                 end
             elseif colon == ":" or slashes == "" then
             elseif colon == ":" or slashes == "" then
                 local s = " ftp git http https irc ircs mms nntp svn telnet worldwind "
                 local s = supplied:match( " " .. scheme:lower() .. " " )
                s = s:match( " " .. scheme:lower() .. " " )
                 if type( s ) == "string" then
                 if type( s ) == "string" then
                  return true
                    return true
                 end
                 end
             end
             end
Zeile 236: Zeile 225:
     end
     end
     return false
     return false
end -- isProtocolAccepted()
function _isProtocolDialog( prot )
    return isProtocolAccepted( prot, " mailto irc ircs telnet " )
end -- _isProtocolDialog()
function _isProtocolWiki( prot )
    return isProtocolAccepted( prot,
                              " ftp git http https nntp svn worldwind " )
end -- _isProtocolWiki()
end -- _isProtocolWiki()


Zeile 342: Zeile 344:
     return _isMailLink( frame.args[ 1 ] ) and "1" or ""
     return _isMailLink( frame.args[ 1 ] ) and "1" or ""
end
end
function p.isPort( frame ) -- OBSOLETED
function p.isProtocolDialog( frame )
     return _isPort( frame.args[ 1 ] ) and "1" or ""
     return _isProtocolDialog( frame.args[ 1 ] ) and "1" or ""
end
end
function p.isProtocolWiki( frame )
function p.isProtocolWiki( frame )
Anonymer Benutzer