PtokaX API Extension
 

News:

29 December 2022 - PtokaX 0.5.3.0 (20th anniversary edition) released...
11 April 2017 - PtokaX 0.5.2.2 released...
8 April 2015 Anti child and anti pedo pr0n scripts are not allowed anymore on this board!
28 September 2015 - PtokaX 0.5.2.1 for Windows 10 IoT released...
3 September 2015 - PtokaX 0.5.2.1 released...
16 August 2015 - PtokaX 0.5.2.0 released...
1 August 2015 - Crowdfunding for ADC protocol support in PtokaX ended. Clearly nobody want ADC support...
30 June 2015 - PtokaX 0.5.1.0 released...
30 April 2015 Crowdfunding for ADC protocol support in PtokaX
26 April 2015 New support hub!
20 February 2015 - PtokaX 0.5.0.3 released...
13 April 2014 - PtokaX 0.5.0.2 released...
23 March 2014 - PtokaX testing version 0.5.0.1 build 454 is available.
04 March 2014 - PtokaX.org sites were temporary down because of DDOS attacks and issues with hosting service provider.

Main Menu

PtokaX API Extension

Started by bastya_elvtars, 07 August, 2005, 15:24:06

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

bastya_elvtars

This introduces 4 new methods inside the frmHub object, which make redirect management easier.

frmHub:GetRed(what) returns 0 if off, 1 if on, -1 on failure
frmHub:GetRedAddy(what) returns the redirect address or -1 on failure.
frmHub:SetRed(what,option) option can be 0 or 1, returns non-nil on success, nil on failure
frmHub:SetRedAddy(what,addy) returns non-nil on success, nil on failure

what can be:

    "share"
    "maxhubs"
    "ratio"
    "slots"
    "full"
    "allnew"
    "ban"
    "default"
    "regonly"
    "tempban"
    "nickrule"
    "notag"

frmHub.SetRedAddy=function(self,what,addy)
  local FuncTable=
  {
    ["share"]=function (addy)
		  self:SetShareRedirAddr(addy)
		end,
    ["slots"]=function (addy)
		  self:SetSlotsRedirAddr(addy)
		end,
    ["ratio"]=function (addy)
		  self:SetRatioRedirAddr(addy)
		end,
    ["maxhubs"]=function (addy)
		    self:SetMaxHubsRedirAddr(addy)
		  end,
    ["nickrule"]= function (addy)
			self:SetNickRuleRedirAddr(addy)
		      end,
    ["tempban"]=function (addy)
		    self:SetTempBanRedirAddr(addy)
		  end,
    ["regonly"]=function (addy)
		    self:SetRegOnlyRedirAddr(addy)
		  end,
    ["ban"]=function (addy)
		self:SetBanRedirAddr(addy)
	      end,
    ["default"]=function (addy)
		    self:SetRedirectAddress(addy)
		  end,
    ["notag"]=function (addy)
		self:SetNoTagRedirAddr(addy)
		end,
  }
  if FuncTable[what] then
    FuncTable[what](addy)
    return true
  end
end

frmHub.GetRedAddy=function(self,what)
  local FuncTable=
  {
    ["share"]=function ()
		  return self:GetShareRedirAddr()
		end,
    ["slots"]=function ()
		  return self:GetSlotsRedirAddr()
		end,
    ["ratio"]=function ()
		  return self:GetRatioRedirAddr()
		end,
    ["maxhubs"]=function ()
		    return self:GetMaxHubsRedirAddr()
		  end,
    ["nickrule"]=function ()
			return self:GetNickRuleRedirAddr()
		      end,
    ["tempban"]=function ()
		    return self:GetTempBanRedirAddr()
		  end,
    ["regonly"]=function ()
		    return self:GetRegOnlyRedirAddr()
		  end,
    ["ban"]=function ()
		return self:GetBanRedirAddr()
	      end,
    ["default"]=function ()
		    return self:GetRedirectAddress()
		  end,
    ["notag"]=function ()
		      return self:GetNoTagRedirAddr()
		    end
  }
  if not FuncTable[what] then return -1
  else return FuncTable[what]() end
end

frmHub.SetRed=function(self,what,p)
  local FuncTable=
  {
    ["share"]=function (p)
		  self:SetShareRedirect(p)
		end,
    ["slots"]=function (p)
		  self:SetSlotsRedirect(p)
		end,
    ["ratio"]=function (p)
		  self:SetRatioRedirect(p)
		end,
    ["maxhubs"]=function (p)
		    self:SetMaxHubsRedirect(p)
		  end,
    ["nickrule"]=function (p)
			self:SetNickRuleRedirect(p)
		      end,
    ["tempban"]=function (p)
		    self:SetTempBanRedirect(p)
		  end,
    ["regonly"]=function (p)
		    self:SetRegOnlyRedirect(p)
		  end,
    ["ban"]=function (p)
		self:SetBanRedirect(p)
	      end,
    ["allnew"]=function (p)
		    if p then self:SetRedirectFull(math.abs(p-1)) end -- lol
		    self:SetRedirectAll(p)
		  end,
    ["full"]=function (p)
		      self:SetRedirectFull(p)
		    end,
  }
  if FuncTable[what] then
    FuncTable[what](p)
    return true
  end
end

frmHub.GetRed=function(self,what)
  local FuncTable=
  {
    ["share"]=function ()
		  return self:GetShareRedirect()
		end,
    ["slots"]=function ()
		  return self:GetSlotsRedirect()
		end,
    ["ratio"]=function ()
		  return self:GetRatioRedirect()
		end,
    ["maxhubs"]=function ()
		    return self:GetMaxHubsRedirect()
		  end,
    ["nickrule"]=function ()
			return self:GetNickRuleRedirect()
		      end,
    ["tempban"]=function ()
		    return self:GetTempBanRedirect()
		  end,
    ["regonly"]=function ()
		    return self:GetRegOnlyRedirect()
		   end,
    ["ban"]=function ()
		return self:GetBanRedirect()
	      end,
    ["allnew"]=function ()
		    return self:GetRedirectAll()
		  end,
    ["full"]=function ()
		      return self:GetRedirectFull()
		    end,
  }
  if not FuncTable[what] then return -1
  else return FuncTable[what]() end
end
Everything could have been anything else and it would have just as much meaning.

SMF spam blocked by CleanTalk