18 require_once SQ_INCLUDE_PATH.
'/asset.inc';
19 require_once SQ_PACKAGES_PATH.
'/ipb/ipb.inc';
20 require_once SQ_CORE_PACKAGE_PATH.
'/interfaces/bridge/bridge.inc';
50 var $top_categories = Array(
53 'name' =>
'All Users',
54 'description' =>
'IPB User Groups',
55 'type_code' =>
'ipb_user_group',
56 'list_function' =>
'getListOfGroups',
57 'minor_prefix' =>
'g_',
58 'minor_type_code' =>
'ipb_user_group',
62 'name' =>
'All Forums',
63 'description' =>
'IPB Forums',
64 'type_code' =>
'ipb_forum',
65 'list_function' =>
'getListOfRootForums',
66 'minor_prefix' =>
'r_',
67 'minor_type_code' =>
'ipb_root_forum',
71 'poll_question' =>
'All Polls',
72 'description' =>
'IPB Polls',
73 'type_code' =>
'ipb_poll',
74 'list_function' =>
'getListOfPolls',
75 'minor_prefix' =>
'o_',
76 'minor_type_code' =>
'ipb_poll',
85 var $ipb_shdw_link_type = SQ_LINK_TYPE_1;
96 $this->_ser_attrs = TRUE;
97 $this->
Asset($assetid);
112 protected function _getName($short_name=FALSE, $contextid=NULL)
115 if ($contextid === NULL) {
116 $contextid = $GLOBALS[
'SQ_SYSTEM']->getContextId();
120 $values = $GLOBALS[
'SQ_SYSTEM']->am->getAttributeValuesByName(
'name', $this->
type(), Array($this->
id), $contextid);
121 if (empty($values) === TRUE) {
122 return parent::_getName($short_name, $contextid);
124 return $values[$this->id];
138 $location = $this->
attr(
'location');
139 $set_location = empty($location);
140 if ($set_location)
return NULL;
142 if (is_null($this->ipb)) {
143 $this->ipb =
new Ipb($this->
attr(
'location'), $this->
attr(
'version'));
159 $location = $this->
attr(
'location');
160 $set_location = empty($location);
166 if (is_null($this->ipb)) {
167 $this->ipb =
new Ipb($this->
attr(
'location'), $this->
attr(
'version'));
192 function getAsset($shadowid, $type_code=
'', $mute_errors=FALSE)
196 $id_parts = explode(
':', $shadowid);
197 if (isset($id_parts[1])) {
198 $shadowid = $id_parts[1];
204 if (is_null($ipb))
return $asset;
205 $prefix = substr($shadowid, 0, 1);
207 if (strlen($shadowid) == 3 && substr($shadowid, -1) ==
'0') {
209 if ($prefix ==
'g') {
210 $type_code =
'ipb_user_group';
211 $class_name =
'Ipb_User_Group';
212 }
else if ($prefix ==
'f') {
213 $type_code =
'ipb_forum';
214 $class_name =
'Ipb_Forum';
215 }
else if ($prefix ==
'o') {
216 $type_code =
'ipb_poll';
217 $class_name =
'Ipb_Poll';
220 $GLOBALS[
'SQ_SYSTEM']->am->includeAsset($type_code);
221 $asset =
new $class_name($this->
id, $this->top_categories[$shadowid]);
225 if ($prefix ==
'u') {
226 $type_code =
'ipb_user';
227 $method =
'getMemberInfo';
228 $class_name =
'Ipb_User';
230 }
else if ($prefix ==
'g') {
231 $type_code =
'ipb_user_group';
232 $method =
'getGroupInfo';
233 $class_name =
'Ipb_User_Group';
235 }
else if ($prefix ==
'r') {
236 $type_code =
'ipb_root_forum';
237 $method =
'getRootForumInfo';
238 $class_name =
'Ipb_Root_Forum';
240 }
else if ($prefix ==
'f') {
241 $type_code =
'ipb_forum';
242 $method =
'getForumInfo';
243 $class_name =
'Ipb_Forum';
245 }
else if ($prefix ==
't') {
246 $type_code =
'ipb_topic';
247 $method =
'getTopicInfo';
248 $class_name =
'Ipb_Topic';
250 }
else if ($prefix ==
'p') {
251 $type_code =
'ipb_post';
252 $method =
'getPostInfo';
253 $class_name =
'Ipb_Post';
255 }
else if ($prefix ==
'o') {
256 $type_code =
'ipb_poll';
257 $method =
'getPollInfo';
258 $class_name =
'Ipb_Poll';
260 $GLOBALS[
'SQ_SYSTEM']->am->includeAsset($type_code);
262 eval(
'$data = $ipb->'.$method.
'($this->id.\':\'.$shadowid);');
264 $data[
'id'] = $shadowid;
266 $asset =
new $class_name($this->
id, $data);
300 function getLinks($assetid, $link_types, $type_code=
'', $strict_type_code=TRUE, $side_of_link=
'major', $sort_by=NULL, $dependant=NULL, $exclusive=NULL)
306 if (!($this->ipb_shdw_link_type & $link_types)) {
310 if ($dependant || $exclusive) {
314 $no_id_parts = FALSE;
315 $id_parts = explode(
':', $assetid);
316 if (isset($id_parts[1])) {
317 $assetid = $id_parts[1];
322 if (!is_array($type_code)) {
323 if (empty($type_code)) {
324 $type_code = Array();
326 $type_code = Array($type_code);
332 if (is_null($ipb) || !$ipb->isConnected()) {
336 if (!isset($this->_tmp[
'getLinks'][$assetid][$side_of_link])) {
343 if ($side_of_link ==
'major') {
346 foreach ($this->top_categories as $top_key => $top_data) {
349 'majorid' => $this->
id,
350 'minorid' => $this->
id.
':'.$top_key,
351 'minor_type_code' => $top_data[
'type_code'],
353 'link_type' => $this->ipb_shdw_link_type,
354 'is_dependant' => FALSE,
355 'is_exclusive' => FALSE,
362 $links = $GLOBALS[
'SQ_SYSTEM']->am->getLinks($this->
id,
'minor');
365 }
else if (array_key_exists($assetid, $this->top_categories)) {
370 if ($side_of_link ==
'major') {
374 if (!$ipb->isConnected())
return $links;
376 $list_function = $this->top_categories[$assetid][
'list_function'];
377 $prefix = $this->top_categories[$assetid][
'minor_prefix'];
378 $type_code = $this->top_categories[$assetid][
'minor_type_code'];
380 $list = $ipb->$list_function();
381 foreach ($list as $sub_group) {
384 'majorid' => $this->
id.
':'.$assetid,
385 'minorid' => $this->
id.
':'.$prefix.$sub_group[
'id'],
386 'minor_type_code' => $type_code,
388 'link_type' => $this->ipb_shdw_link_type,
389 'is_dependant' => FALSE,
390 'is_exclusive' => FALSE,
400 'majorid' => $this->
id,
401 'major_type_code' => $this->
type(),
402 'minorid' => $this->
id.
':'.$assetid,
404 'link_type' => $this->ipb_shdw_link_type,
405 'is_dependant' => FALSE,
406 'is_exclusive' => FALSE,
412 $prefix = substr($assetid, 0, 1);
417 if ($side_of_link ==
'major') {
419 if ($prefix ==
'g') {
423 $tmp = explode(
'_', $assetid);
425 $members = $ipb->getMembers(0, $group_id);
426 foreach ($members as $key => $data) {
429 'majorid' => $this->
id.
':'.$assetid,
430 'minorid' => $this->
id.
':'.$key,
431 'minor_type_code' =>
'ipb_user',
433 'link_type' => $this->ipb_shdw_link_type,
434 'is_dependant' => FALSE,
435 'is_exclusive' => FALSE,
440 }
else if ($prefix ==
'u') {
445 }
else if ($prefix ==
'r') {
449 $list_of_topics = $ipb->getListOfForums($assetid);
450 foreach ($list_of_topics as $topic) {
453 'majorid' => $this->
id.
':'.$assetid,
454 'minorid' => $this->
id.
':f_'.$topic[
'id'],
455 'minor_type_code' =>
'ipb_forum',
457 'link_type' => $this->ipb_shdw_link_type,
458 'is_dependant' => FALSE,
459 'is_exclusive' => FALSE,
464 }
else if ($prefix ==
'f') {
468 $list_of_topics = $ipb->getListOfTopics($assetid);
469 foreach ($list_of_topics as $topic) {
472 'majorid' => $this->
id.
':'.$assetid,
473 'minorid' => $this->
id.
':t_'.$topic[
'id'],
474 'minor_type_code' =>
'ipb_topic',
476 'link_type' => $this->ipb_shdw_link_type,
477 'is_dependant' => FALSE,
478 'is_exclusive' => FALSE,
484 }
else if ($prefix ==
't') {
488 $list_of_posts = $ipb->getListOfPosts($assetid);
489 foreach ($list_of_posts as $post) {
492 'majorid' => $this->
id.
':'.$assetid,
493 'minorid' => $this->
id.
':p_'.$post[
'id'],
494 'minor_type_code' =>
'ipb_post',
496 'link_type' => $this->ipb_shdw_link_type,
497 'is_dependant' => FALSE,
498 'is_exclusive' => FALSE,
511 'link_type' => $this->ipb_shdw_link_type,
512 'is_dependant' => FALSE,
513 'is_exclusive' => FALSE,
517 if ($prefix ==
'g') {
520 $links[
'majorid'] = $this->
id.
':'.
'g_0';
521 $links[
'major_type_code'] =
'ipb_all_users';
522 $links[
'minorid'] = $this->
id.
':'.$assetid;
524 }
else if ($prefix ==
'u') {
528 $tmp = explode(
'_', $assetid);
530 $group = $ipb->getMembers($user_id);
531 $links[
'majorid'] = $this->
id.
':g_'.$group[
'mgroup'];
532 $links[
'major_type_code'] =
'ipb_user_group';
533 $links[
'minorid'] = $this->
id.
':'.$assetid;
535 }
else if ($prefix ==
'r') {
538 $links[
'majorid'] = $this->
id.
':'.
'f_0';
539 $links[
'major_type_code'] =
'ipb_forum';
540 $links[
'minorid'] = $this->
id.
':'.$assetid;
542 }
else if ($prefix ==
'f') {
546 $forum_info = $ipb->getForumInfo($this->
id.
':'.$assetid);
547 $links[
'majorid'] = $this->
id.
':'.
'r_'.$forum_info[
'parent_id'];
548 $links[
'major_type_code'] =
'ipb_root_forum';
549 $links[
'minorid'] = $this->
id.
':'.$assetid;
551 }
else if ($prefix ==
't') {
555 $forum_info = $ipb->getTopicInfo($this->
id.
':'.$assetid);
556 $links[
'majorid'] = $this->
id.
':'.
'f_'.$forum_info[
'forum_id'];
557 $links[
'major_type_code'] =
'ipb_forum';
558 $links[
'minorid'] = $this->
id.
':'.$assetid;
560 }
else if ($prefix ==
'p') {
563 $forum_info = $ipb->getPostInfo($this->
id.
':'.$assetid);
564 $links[
'majorid'] = $this->
id.
':'.
't_'.$forum_info[
'tid'];
565 $links[
'major_type_code'] =
'ipb_topic';
566 $links[
'minorid'] = $this->
id.
':'.$assetid;
577 $this->_tmp[
'getLinks'][$assetid][$side_of_link] = $links;
581 return $this->_tmp[
'getLinks'][$assetid][$side_of_link];
599 function getParents($assetid, $type_code=
'', $strict_type_code=TRUE)
601 $no_id_parts = FALSE;
602 $id_parts = explode(
':', $assetid);
603 if (isset($id_parts[1])) {
604 $assetid = $id_parts[1];
609 if (!is_array($type_code)) {
610 if (empty($type_code)) {
611 $type_code = Array();
613 $type_code = Array($type_code);
617 if (!isset($this->_tmp[
'getParents'][$assetid])) {
619 $prefix = substr($assetid, 0, 1);
620 if (array_key_exists($assetid, $this->top_categories)) {
623 }
else if ($prefix ==
'g' || $prefix ==
'r' || $prefix ==
'o' ) {
630 $parents[$id_parts[0].
':'.$prefix.
'_0'] =
'ipb_user_group';
633 $parents[$id_parts[0].
':'.
'f_0'] =
'ipb_forum';
636 $parents[$id_parts[0].
':'.$prefix.
'_0'] =
'ipb_poll';
643 if ($prefix ==
'u') {
645 $parents[$id_parts[0].
':'.
'g_0'] =
'ipb_user_group';
646 $result = $ipb->getMemberParent($id_parts[0].
':'.$assetid);
647 $parents[$id_parts[0].
':'.
'g_'.$result[
'mgroup']] =
'ipb_user_group';
649 }
else if ($prefix ==
'f') {
651 $parents[$id_parts[0].
':'.
'f_0'] =
'ipb_forum';
652 $result = $ipb->getForumParent($id_parts[0].
':'.$assetid);
653 $parents[$id_parts[0].
':'.
'r_'.$result[
'parent_id']] =
'ipb_root_forum';
655 }
else if ($prefix ==
't') {
657 $parents[$id_parts[0].
':'.
'f_0'] =
'ipb_forum';
658 $result = $ipb->getTopicParent($id_parts[0].
':'.$assetid);
659 $parents[$id_parts[0].
':'.
'r_'.$result[
'parent_id']] =
'ipb_root_forum';
660 $parents[$id_parts[0].
':'.
'f_'.$result[
'forum_id']] =
'ipb_forum';
662 }
else if ($prefix ==
'p') {
664 $parents[$id_parts[0].
':'.
'f_0'] =
'ipb_forum';
665 $result = $ipb->getPostParent($id_parts[0].
':'.$assetid);
666 $parents[$id_parts[0].
':'.
'r_'.$result[
'parent_id']] =
'ipb_root_forum';
667 $parents[$id_parts[0].
':'.
'f_'.$result[
'forum_id']] =
'ipb_forum';
668 $parents[$id_parts[0].
':'.
't_'.$result[
'topic_id']] =
'ipb_topic';
672 $this->_tmp[
'getParents'][$assetid] = $parents;
676 return $this->_tmp[
'getParents'][$assetid];
701 function getChildren($assetid, $type_code=
'', $strict_type_code=TRUE, $dependant=NULL, $sort_by=NULL)
704 $id_parts = explode(
':', $assetid);
705 if (isset($id_parts[1])) {
706 $assetid = $id_parts[1];
708 $links = $this->
getLinks($assetid, SQ_LINK_TYPE_1,
'', TRUE,
'major');
709 foreach ($links as $link) {
710 if (empty($type_code) || (!empty($type_code) && (array_search($link[
'minor_type_code'], $type_code) !== FALSE))) {
711 $children[$link[
'minorid']] = $link[
'minor_type_code'];
713 $children = array_merge($children, $this->
getChildren($link[
'minorid'], $type_code, $strict_type_code, $dependant, $sort_by));
718 if (!is_array($type_code)) {
719 if (empty($type_code)) {
720 $type_code = Array();
722 $type_code = Array($type_code);
725 $no_type_code = empty($type_code);
727 if (!isset($this->_tmp[
'getChildren'][$assetid])) {
729 $prefix = substr($assetid, 0, 1);
730 $suffix = substr($assetid, -1);
731 $is_top_category = strlen($assetid) == 3 && $suffix ==
'0';
734 if ($prefix ==
'g') {
735 if ($is_top_category) {
737 $all_groups = Array();
738 $all_members = Array();
739 $add_user_group = (array_search(
'ipb_user_group', $type_code) !== FALSE);
740 $add_user = (array_search(
'ipb_user', $type_code) !== FALSE);
741 if ($no_type_code || (!$no_type_code && $add_user_group)) {
742 $all_groups = $ipb->getListOfGroups();
744 if ($no_type_code || (!$no_type_code && $add_user)) {
745 $all_members = $ipb->getListOfMembers();
748 foreach ($all_groups as $group) {
749 $children[$this->
id.
':g_'.$group[
'g_id']] =
'ipb_user_group';
751 foreach ($all_members as $member) {
752 $children[$this->
id.
':u_'.$member[
'id']] =
'ipb_user';
756 $tmp = explode(
'_', $assetid);
757 $group_members = Array();
758 $add_user = (array_search(
'ipb_user', $type_code) !== FALSE);
759 if ($no_type_code || (!$no_type_code && $add_user)) {
760 $group_members = $ipb->getListOfMembers($this->
id.
':'.$assetid);
762 foreach ($group_members as $member) {
763 $children[$this->
id.
':u_'.$member[
'id']] =
'ipb_user';
767 }
else if ($prefix ==
'f') {
768 if ($is_top_category) {
771 $all_root_forums = $ipb->getListOfRootForums();
772 foreach ($all_root_forums as $root_forum) {
773 $children[$this->
id.
':r_'.$root_forum[
'id']] =
'ipb_root_forum';
775 $all_forums = $ipb->getListOfForums(
'f_'.$root_forum[
'id']);
776 foreach ($all_forums as $forum) {
777 $children[$this->
id.
':f_'.$forum[
'id']] =
'ipb_forum';
779 $all_topics = $ipb->getListOfTopics(
'f_'.$forum[
'id']);
780 foreach ($all_topics as $topic) {
781 $children[$this->
id.
':t_'.$topic[
'id']] =
'ipb_topic';
783 $all_posts = $ipb->getListOfPosts(
't_'.$topic[
'id']);
784 foreach ($all_posts as $post) {
785 $children[$this->
id.
':p_'.$post[
'id']] =
'ipb_post';
792 $add_ipb_root_forum = (array_search(
'ipb_root_forum', $type_code) !== FALSE);
793 $add_ipb_forum = (array_search(
'ipb_forum', $type_code) !== FALSE);
794 $add_ipb_topic = (array_search(
'ipb_topic', $type_code) !== FALSE);
795 $add_ipb_post = (array_search(
'ipb_post', $type_code) !== FALSE);
797 $all_root_forums = $ipb->getListOfRootForums();
798 foreach ($all_root_forums as $root_forum) {
799 if ($add_ipb_root_forum) {
800 $children[$this->
id.
':r_'.$root_forum[
'id']] =
'ipb_root_forum';
802 if ($strict_type_code && !$add_ipb_forum && !$add_ipb_topic && !$add_ipb_post) {
805 $all_forums = $ipb->getListOfForums(
'f_'.$root_forum[
'id']);
806 foreach ($all_forums as $forum) {
807 if ($add_ipb_forum) {
808 $children[$this->
id.
':f_'.$forum[
'id']] =
'ipb_forum';
810 if ($strict_type_code && !$add_ipb_topic && !$add_ipb_post) {
813 $all_topics = $ipb->getListOfTopics(
'f_'.$forum[
'id']);
814 foreach ($all_topics as $topic) {
815 if ($add_ipb_topic) {
816 $children[$this->
id.
':t_'.$topic[
'id']] =
'ipb_topic';
818 if ($strict_type_code && !$add_ipb_post) {
821 $all_posts = $ipb->getListOfPosts(
't_'.$topic[
'id']);
822 foreach ($all_posts as $post) {
824 $children[$this->
id.
':p_'.$post[
'id']] =
'ipb_post';
837 $all_topics = $ipb->getListOfTopics($assetid);
838 foreach ($all_topics as $topic) {
839 $children[$this->
id.
':t_'.$topic[
'id']] =
'ipb_topic';
841 $all_posts = $ipb->getListOfPosts(
't_'.$topic[
'id']);
842 foreach ($all_posts as $post) {
843 $children[$this->
id.
':p_'.$post[
'id']] =
'ipb_post';
847 $add_ipb_topic = (array_search(
'ipb_topic', $type_code) !== FALSE);
848 $add_ipb_post = (array_search(
'ipb_post', $type_code) !== FALSE);
849 if ($strict_type_code && !$add_ipb_topic && !$add_ipb_post) {
852 $all_topics = $ipb->getListOfTopics($assetid);
853 foreach ($all_topics as $topic) {
854 if ($add_ipb_topic) {
855 $children[$this->
id.
':t_'.$topic[
'id']] =
'ipb_topic';
857 if ($strict_type_code && !$add_ipb_post) {
860 $all_posts = $ipb->getListOfPosts(
't_'.$topic[
'id']);
861 foreach ($all_posts as $post) {
863 $children[$this->
id.
':p_'.$post[
'id']] =
'ipb_post';
872 }
else if ($prefix ==
'r') {
875 $all_forums = $ipb->getListOfForums($assetid);
876 foreach ($all_forums as $forum) {
877 $children[$this->
id.
':f_'.$forum[
'id']] =
'ipb_forum';
879 $all_topics = $ipb->getListOfTopics(
'f_'.$forum[
'id']);
880 foreach ($all_topics as $topic) {
881 $children[$this->
id.
':t_'.$topic[
'id']] =
'ipb_topic';
883 $all_posts = $ipb->getListOfPosts(
't_'.$topic[
'id']);
884 foreach ($all_posts as $post) {
885 $children[$this->
id.
':p_'.$post[
'id']] =
'ipb_post';
892 $add_ipb_forum = (array_search(
'ipb_forum', $type_code) !== FALSE);
893 $add_ipb_topic = (array_search(
'ipb_topic', $type_code) !== FALSE);
894 $add_ipb_post = (array_search(
'ipb_post', $type_code) !== FALSE);
895 if ($strict_type_code && !$add_ipb_forum && !$add_ipb_topic && !$add_ipb_post) {
898 $all_forums = $ipb->getListOfForums($assetid);
899 foreach ($all_forums as $forum) {
900 if ($add_ipb_forum) {
901 $children[$this->
id.
':f_'.$forum[
'id']] =
'ipb_forum';
903 if ($strict_type_code && !$add_ipb_topic && !$add_ipb_post) {
906 $all_topics = $ipb->getListOfTopics(
'f_'.$forum[
'id']);
907 foreach ($all_topics as $topic) {
908 if ($add_ipb_topic) {
909 $children[$this->
id.
':t_'.$topic[
'id']] =
'ipb_topic';
911 if ($strict_type_code && !$add_ipb_post) {
914 $all_posts = $ipb->getListOfPosts(
't_'.$topic[
'id']);
915 foreach ($all_posts as $post) {
917 $children[$this->
id.
':p_'.$post[
'id']] =
'ipb_post';
927 }
else if ($prefix ==
't') {
930 $all_posts = $ipb->getListOfPosts($assetid);
931 foreach ($all_posts as $post) {
932 $children[$this->
id.
':p_'.$post[
'id']] =
'ipb_post';
935 $add_ipb_post = (array_search(
'ipb_post', $type_code) !== FALSE);
936 if ($strict_type_code && !$add_ipb_post) {
939 $all_posts = $ipb->getListOfPosts($assetid);
940 foreach ($all_posts as $post) {
942 $children[$this->
id.
':p_'.$post[
'id']] =
'ipb_post';
948 }
else if ($prefix ==
'o') {
950 if ($is_top_category) {
952 $all_polls = $ipb->getListOfPolls();
953 foreach ($all_polls as $poll) {
954 $children[$this->
id.
':o_'.$poll[
'id']] =
'ipb_poll';
957 $add_ipb_poll = (array_search(
'ipb_poll', $type_code) !== FALSE);
958 if ($strict_type_code && !$add_ipb_poll) {
961 $all_polls = $ipb->getListOfPolls();
962 foreach ($all_polls as $poll) {
964 $children[$this->
id.
':o_'.$poll[
'id']] =
'ipb_poll';
972 $this->_tmp[
'getChildren'][$assetid] = $children;
976 return $this->_tmp[
'getChildren'][$assetid];
995 $shadow_ids = explode(
',', $assetid);
996 foreach ($shadow_ids as $id) {
997 $asset =& $this->
getAsset($this->
id.
':'.$id);
998 $url = substr($asset->getURL(), strlen(current_protocol()) +3);
1001 'assetid' => $this->
id.
':'.$id,
1002 'name' => $asset->name,
1003 'short_name' => $asset->short_name,
1004 'type_code' => $asset->type(),
1005 'link_type' => SQ_LINK_TYPE_1,
1006 'protocol' => current_protocol(),
1010 return array_reverse($lineage);
1029 function getAssetInfo($assetids, $type_code=Array(), $strict_type_code=TRUE, $field=
'')
1032 foreach ($assetids as $assetid) {
1033 $asset =& $this->
getAsset($assetid);
1035 if (!empty($field)) {
1036 if ($field ==
'assetid') {
1037 $info[$assetid] = $assetid;
1038 }
else if ($field ==
'type_code') {
1039 $info[$assetid] = $asset->type();
1040 }
else if (in_array($field , Array(
'version',
'name',
'short_name',
'status'))) {
1041 $info[$assetid] = $asset->$field;
1043 $info[$assetid] = $this->$field;
1046 $info[$assetid] = Array(
1047 'assetid' => $assetid,
1048 'type_code' => $asset->type(),
1049 'version' => $asset->version,
1050 'name' => $asset->name,
1051 'short_name' => $asset->short_name,
1052 'status' => $asset->status,
1053 'languages' => $this->languages,
1054 'charset' => $this->charset,
1055 'force_secure' => $this->force_secure,
1056 'created' => $this->created,
1057 'created_userid' => $this->created_userid,
1058 'updated' => $this->updated,
1059 'updated_userid' => $this->updated_userid,
1060 'published' => $this->published,
1061 'published_userid' => $this->published_userid,
1062 'status_changed' => $this->status_changed,
1063 'status_changed_userid' => $this->status_changed_userid,
1116 function getLink($assetid, $link_type=NULL, $type_code=
'', $strict_type_code=TRUE, $value=NULL, $side_of_link=
'major', $exclusive=NULL)
1162 function countLinks($assetid, $side_of_link=
'major', $link_types=0, $type_code=
'', $strict_type_code=TRUE, $ignore_linkid=0)
1189 function getLinkByAsset($assetid, $other_assetid, $link_types=NULL, $value=NULL, $side_of_link=
'major', $force_array=FALSE, $dependant=NULL, $exclusive=NULL)
1226 function updateLink($linkid, $link_type=NULL, $value=NULL, $sort_order=NULL)
1284 function createAssetLink(&$major, &$minor, $link_type, $value=
'', $sort_order=NULL, $dependant=
'0', $exclusive=
'0', $moving=FALSE)
1311 function getPermission($assetid, $permission, $granted=NULL, $and_greater=TRUE, $expand_groups=FALSE, $all_info=FALSE)