Rotur
  • Getting Started
  • Your Connection
    • What is a websocket?
    • Connecting
      • Handshake
      • SetID
      • Link
    • Authentication
      • Get User Data
      • Login
    • Rotur Designations
    • Websocket Commands
      • Global Message (gmsg)
      • Private Message (pmsg)
      • Login to rotur (auth)
  • My Account
    • Rotur Account Objects
      • originOS specific keys
    • Requesting my ofsf storage
    • Rotur Badges
    • Transactions and Taxes
  • Assorted APIs
    • rMail
    • avatars.rotur.dev
      • .banners
    • rotur.dev/auth
    • Keys
  • languages
    • RWL
      • Basics
      • Structure
      • Attributes
        • Text
        • Frame
        • Section
      • Alignments and Anchors
    • RTR
      • Basics
      • Structure
      • Functions
        • Mathematical Functions
        • String Functions
        • Array Functions
        • Object Functions
        • Logical Functions
        • Utility Functions
      • Events
      • Examples
    • RDF
  • Claw
    • What is claw
    • Api Endpoints
      • /feed
      • /post
      • /follow
      • /unfollow
      • /followers
      • /following
      • /profile
      • /delete
      • /rate
      • /following_feed
      • /reply
      • /repost
      • /top_posts
      • /search_posts
      • /search_users
  • Web Standard
    • What is this
  • Addons / Extensions
    • Basic Structure
    • Events
      • onload
      • page_load
      • page_focus
    • API
      • Classes
        • Page
          • (static) .new()
          • .getTitle()
        • URL
          • (static) .new()
          • (static) .parse()
          • .format()
          • .getAsyncData()
          • .getFetchUrl()
          • .getTitle()
    • Commands
      • redirect
      • opentab
    • Variables
      • tab_info
      • page_width / height
      • scroll_x / y
Powered by GitBook
On this page
  • Parameters
  • Implementations
Edit on GitHub
  1. Addons / Extensions
  2. API
  3. Classes
  4. URL

(static) .parse()

Parses a url string and turns it into an instanced URL class.

Parameters

  • String to parse

Implementations

def parse(text) (
  local scheme = Config.url.defaults.scheme
  local name = Config.url.defaults.name
  local top = Config.url.defaults.top
  local sub = ""
  local path = null
  local filename = null
  
  local tokens = text.split("://")
  if tokens.len > 1 (
    scheme = tokens.shift()
    text = tokens.join("://")
  )
  
  if scheme == "local" (
    return Url.new(scheme,text,null,null,null,null,null)
  )
  
  tokens = text.split("/")
  text = tokens.shift()
  if tokens[-1].split(".").len > 1 (
    filename = tokens.pop()
  )
  path = tokens.join("/")
  
  tokens = text.split(".")
  if tokens.len == 1 (
    name = tokens[1]
  )
  if tokens.len == 1 (
    top = tokens[2]
    name = tokens[1]
  )
  if tokens.len >= 2 (
    top = tokens.pop()
    name = tokens.pop()
    sub = tokens.join(".")
  )
  
  return Url.new(scheme,name,top,sub,path,null,filename)
)
Previous(static) .new()Next.format()

Last updated 24 days ago