diff options
author | root <root@fucktheforce.de> | 2018-01-23 13:33:24 +0100 |
---|---|---|
committer | root <root@fucktheforce.de> | 2018-01-23 13:33:24 +0100 |
commit | cad4836fbc4dc3750bf973abced81277a89a3de8 (patch) | |
tree | 38ebba18eb38d16f94afd821430ced2bcf63a739 /managing-ui/lib/xmpp/xmpp.util.php | |
parent | 732fc99a23364a525c428c279173abd460065488 (diff) | |
parent | b7515c5d9c5fc3c622376818570c05a03c74fe17 (diff) |
Merge branch 'master' of http://git.fucktheforce.de/cgi-bin/git/httpupload
Diffstat (limited to 'managing-ui/lib/xmpp/xmpp.util.php')
-rw-r--r-- | managing-ui/lib/xmpp/xmpp.util.php | 69 |
1 files changed, 69 insertions, 0 deletions
diff --git a/managing-ui/lib/xmpp/xmpp.util.php b/managing-ui/lib/xmpp/xmpp.util.php new file mode 100644 index 0000000..5bde0c0 --- /dev/null +++ b/managing-ui/lib/xmpp/xmpp.util.php @@ -0,0 +1,69 @@ +<?php +/* + * xmpp jid util functions. + */ + +function getJidDomain($jid) { + if (null == $jid) { + return null; + } + + $atIndex = strpos($jid, '@'); + $slashIndex = strpos($jid, '/'); + + if ($slashIndex !== false) { + if ($slashIndex > $atIndex) {// 'local@domain.foo/resource' and 'local@domain.foo/res@otherres' case + return substr($jid, $atIndex + 1, $slashIndex - $atIndex + 1); + } else {// 'domain.foo/res@otherres' case + return substr($jid, 0, $slashIndex); + } + } else { + return substr($jid, $atIndex + 1); + } +} + +function getJidLocalPart($jid) { + if ($jid == null) { + return null; + } + + $atIndex = strpos($jid, '@'); + if ($atIndex === false || $atIndex == 0) { + return ""; + } + + $slashIndex = strpos($jid, '/'); + if ($slashIndex !== false && $slashIndex < $atIndex) { + return ""; + } else { + return substr($jid, 0, $atIndex); + } +} + +function getBareJid($jid) { + if ($jid == null) { + return null; + } + + $slashIndex = strpos($jid, '/'); + if ($slashIndex === false) { + return $jid; + } else if ($slashIndex == 0) { + return ""; + } else { + return substr($jid, 0, $slashIndex); + } +} + +function getResource($jid) { + if ($jid == null) { + return null; + } + + $slashIndex = strpos($jid, '/'); + if ($slashIndex + 1 > strlen($jid) || $slashIndex === false) { + return ""; + } else { + return substr($jid, $slashIndex + 1); + } +}
\ No newline at end of file |