Guest User

Untitled

a guest
Jun 18th, 2018
71
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.24 KB | None | 0 0
  1. function get_endchain_firstchild_url($classname,$id,$baseurl) {
  2.  
  3. $url = '';
  4. $passedObjects = array();
  5. $passedFlag = 0;
  6.  
  7. $curObj->id = $id;
  8. $curObj->class = $this->classes[$classname]->id;
  9.  
  10. while ($this->idToClassName[$curObj->class] == $classname) {
  11. if (isset($this->links->childs[$curObj->class][$curObj->id]) && count($this->links->childs[$curObj->class][$curObj->id])) {
  12. foreach ($this->links->childs[$curObj->class][$curObj->id] as $child) {
  13. $passedFlag = 0;
  14. foreach ($passedObjects as $passed)
  15. if (($child->class == $passed->class) && ($child->id == $passed->id)) { $passedFlag = 1; break; }
  16. if (!$passedFlag) {
  17. $passedObjects[] = $curObj;
  18. $curObj->class = $child->class;
  19. $curObj->id = $child->id;
  20. $url .= '/'.$this->urlnames[$child->class][$child->id];
  21. break;
  22. }
  23. }
  24. if ($passedFlag) die('Невозможно создать ссылку на объект! Обнаружено зацикливание ('.$this->urlnames[$curObj->class][$curObj->id].').');
  25. } else { $url=''; break; }
  26. }
  27.  
  28. return $baseurl.$url;
  29. }
Add Comment
Please, Sign In to add comment