IPSCONTENT; $return .= \IPS\Theme::i()->getTemplate( "global", "core" )->userPhoto( $user->member(), 'fluid' ); $return .= <<

IPSCONTENT; if ( $user->id AND \IPS\Member::loggedIn()->language()->checkKeyExists( "core_staff_directory_name_" . $user->id ) ): $return .= <<canAccessModule( \IPS\Application\Module::get( 'core', 'members' ) ) ): $return .= << IPSCONTENT; $val = "core_staff_directory_name_{$user->id}"; $return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( $val, ENT_DISALLOWED, 'UTF-8', FALSE ), FALSE, array( 'escape' => TRUE ) ); $return .= << IPSCONTENT; else: $return .= <<language()->addToStack( htmlspecialchars( $val, ENT_DISALLOWED, 'UTF-8', FALSE ), FALSE, array( 'escape' => TRUE ) ); $return .= <<member()->link()} IPSCONTENT; endif; $return .= << IPSCONTENT; if ( $user->id AND \IPS\Member::loggedIn()->language()->checkKeyExists( "core_staff_directory_title_" . $user->id ) ): $return .= << IPSCONTENT; $val = "core_staff_directory_title_{$user->id}"; $return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( $val, ENT_DISALLOWED, 'UTF-8', FALSE ), FALSE, array( 'escape' => TRUE ) ); $return .= << IPSCONTENT; endif; $return .= << IPSCONTENT; if ( ($user->id AND \IPS\Member::loggedIn()->language()->checkKeyExists( "core_staff_directory_bio_" . $user->id )) OR (!\IPS\Member::loggedIn()->members_disable_pm AND !$user->member()->members_disable_pm AND \IPS\Member::loggedIn()->member_id AND \IPS\Member::loggedIn()->canAccessModule( \IPS\Application\Module::get( 'core', 'messaging' ) )) ): $return .= << IPSCONTENT; $return .= \IPS\Theme\CustomTemplate::getCustomTemplatesForHookPoint( "core/front/staffdirectory/layout_blocks", "staffInfo:inside-start", [ $user ] ); $return .= <<id AND \IPS\Member::loggedIn()->language()->checkKeyExists( "core_staff_directory_bio_" . $user->id ) ): $return .= << id ) ): $return .= <<language()->addToStack( htmlspecialchars( $val, ENT_DISALLOWED, 'UTF-8', FALSE ), FALSE, array( 'escape' => TRUE ) ); $return .= <<member()->name, ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE ); $return .= <<Bio
IPSCONTENT; $return .= \IPS\Theme::i()->getTemplate( "global", "core", 'global' )->richText( \IPS\Member::loggedIn()->language()->addToStack('core_staff_directory_bio_' . $user->id) ); $return .= << IPSCONTENT; endif; $return .= <<members_disable_pm AND !$user->member()->members_disable_pm AND \IPS\Member::loggedIn()->member_id AND \IPS\Member::loggedIn()->canAccessModule( \IPS\Application\Module::get( 'core', 'messaging' ) ) ): $return .= <<member()->member_id}", null, "messenger_compose", array(), 0 ), ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', TRUE ); $return .= << IPSCONTENT; $return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'message_send', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) ); $return .= << IPSCONTENT; endif; $return .= << IPSCONTENT; $return .= \IPS\Theme\CustomTemplate::getCustomTemplatesForHookPoint( "core/front/staffdirectory/layout_blocks", "staffInfo:after", [ $user ] ); $return .= << IPSCONTENT; return $return; } function layout_blocks_preview( ) { $return = ''; $return .= <<




IPSCONTENT; return $return; } function layout_full( $user ) { $return = ''; $return .= <<
IPSCONTENT; $return .= \IPS\Theme::i()->getTemplate( "global", "core" )->userPhoto( $user->member(), 'fluid' ); $return .= <<

IPSCONTENT; if ( $user->id AND \IPS\Member::loggedIn()->language()->checkKeyExists( "core_staff_directory_name_" . $user->id ) ): $return .= <<canAccessModule( \IPS\Application\Module::get( 'core', 'members' ) ) ): $return .= << IPSCONTENT; $val = "core_staff_directory_name_{$user->id}"; $return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( $val, ENT_DISALLOWED, 'UTF-8', FALSE ), FALSE, array( 'escape' => TRUE ) ); $return .= << IPSCONTENT; else: $return .= <<language()->addToStack( htmlspecialchars( $val, ENT_DISALLOWED, 'UTF-8', FALSE ), FALSE, array( 'escape' => TRUE ) ); $return .= <<member()->link()} IPSCONTENT; endif; $return .= << IPSCONTENT; if ( $user->id AND \IPS\Member::loggedIn()->language()->checkKeyExists( "core_staff_directory_title_" . $user->id ) ): $return .= << IPSCONTENT; $val = "core_staff_directory_title_{$user->id}"; $return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( $val, ENT_DISALLOWED, 'UTF-8', FALSE ), FALSE, array( 'escape' => TRUE ) ); $return .= << IPSCONTENT; endif; $return .= << IPSCONTENT; if ( !\IPS\Member::loggedIn()->members_disable_pm AND !$user->member()->members_disable_pm AND \IPS\Member::loggedIn()->member_id AND \IPS\Member::loggedIn()->canAccessModule( \IPS\Application\Module::get( 'core', 'messaging' ) ) ): $return .= << IPSCONTENT; $return .= \IPS\Theme\CustomTemplate::getCustomTemplatesForHookPoint( "core/front/staffdirectory/layout_full", "staffInfo:inside-start", [ $user ] ); $return .= <<member()->member_id}", null, "messenger_compose", array(), 0 ), ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', TRUE ); $return .= << IPSCONTENT; $return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'message_send', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) ); $return .= << IPSCONTENT; $return .= \IPS\Theme\CustomTemplate::getCustomTemplatesForHookPoint( "core/front/staffdirectory/layout_full", "staffInfo:inside-end", [ $user ] ); $return .= << IPSCONTENT; $return .= \IPS\Theme\CustomTemplate::getCustomTemplatesForHookPoint( "core/front/staffdirectory/layout_full", "staffInfo:after", [ $user ] ); $return .= << IPSCONTENT; if ( $user->id AND \IPS\Member::loggedIn()->language()->checkKeyExists( "core_staff_directory_bio_" . $user->id ) ): $return .= << IPSCONTENT; $return .= \IPS\Theme::i()->getTemplate( "global", "core", 'global' )->richText( \IPS\Member::loggedIn()->language()->addToStack('core_staff_directory_bio_' . $user->id) ); $return .= << IPSCONTENT; endif; $return .= <<

IPSCONTENT; return $return; } function layout_full_preview( ) { $return = ''; $return .= <<



IPSCONTENT; return $return; } function layout_half( $user ) { $return = ''; $return .= <<
IPSCONTENT; $return .= \IPS\Theme::i()->getTemplate( "global", "core" )->userPhoto( $user->member(), 'fluid' ); $return .= <<

IPSCONTENT; if ( $user->id AND \IPS\Member::loggedIn()->language()->checkKeyExists( "core_staff_directory_name_" . $user->id ) ): $return .= <<canAccessModule( \IPS\Application\Module::get( 'core', 'members' ) ) ): $return .= << IPSCONTENT; $val = "core_staff_directory_name_{$user->id}"; $return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( $val, ENT_DISALLOWED, 'UTF-8', FALSE ), FALSE, array( 'escape' => TRUE ) ); $return .= << IPSCONTENT; else: $return .= <<language()->addToStack( htmlspecialchars( $val, ENT_DISALLOWED, 'UTF-8', FALSE ), FALSE, array( 'escape' => TRUE ) ); $return .= <<member()->link()} IPSCONTENT; endif; $return .= << IPSCONTENT; if ( $user->id AND \IPS\Member::loggedIn()->language()->checkKeyExists( "core_staff_directory_title_" . $user->id ) ): $return .= << IPSCONTENT; $val = "core_staff_directory_title_{$user->id}"; $return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( $val, ENT_DISALLOWED, 'UTF-8', FALSE ), FALSE, array( 'escape' => TRUE ) ); $return .= << IPSCONTENT; endif; $return .= << IPSCONTENT; $return .= \IPS\Theme\CustomTemplate::getCustomTemplatesForHookPoint( "core/front/staffdirectory/layout_half", "staffInfo:inside-start", [ $user ] ); $return .= <<id AND \IPS\Member::loggedIn()->language()->checkKeyExists( "core_staff_directory_bio_" . $user->id ) ): $return .= <<id ) ): $return .= <<language()->addToStack( htmlspecialchars( $val, ENT_DISALLOWED, 'UTF-8', FALSE ), FALSE, array( 'escape' => TRUE ) ); $return .= <<member()->name, ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE ); $return .= <<Bio IPSCONTENT; endif; $return .= <<members_disable_pm AND !$user->member()->members_disable_pm AND \IPS\Member::loggedIn()->member_id AND \IPS\Member::loggedIn()->canAccessModule( \IPS\Application\Module::get( 'core', 'messaging' ) ) ): $return .= <<member()->member_id}", null, "messenger_compose", array(), 0 ), ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', TRUE ); $return .= << IPSCONTENT; $return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'message_send', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) ); $return .= << IPSCONTENT; endif; $return .= << IPSCONTENT; $return .= \IPS\Theme\CustomTemplate::getCustomTemplatesForHookPoint( "core/front/staffdirectory/layout_half", "staffInfo:after", [ $user ] ); $return .= << IPSCONTENT; $return .= \IPS\Theme::i()->getTemplate( "global", "core", 'global' )->richText( \IPS\Member::loggedIn()->language()->addToStack('core_staff_directory_bio_' . $user->id) ); $return .= <<

IPSCONTENT; return $return; } function layout_half_preview( ) { $return = ''; $return .= <<




IPSCONTENT; return $return; } function template( $groups, $userIsStaff=FALSE ) { $return = ''; $return .= <<
IPSCONTENT; $return .= \IPS\Theme\CustomTemplate::getCustomTemplatesForHookPoint( "core/front/staffdirectory/template", "header:before", [ $groups,$userIsStaff ] ); $return .= << IPSCONTENT; $return .= \IPS\Theme\CustomTemplate::getCustomTemplatesForHookPoint( "core/front/staffdirectory/template", "header:inside-start", [ $groups,$userIsStaff ] ); $return .= << IPSCONTENT; $return .= \IPS\Theme\CustomTemplate::getCustomTemplatesForHookPoint( "core/front/staffdirectory/template", "title:inside-start", [ $groups,$userIsStaff ] ); $return .= <<language()->addToStack( htmlspecialchars( 'staff_directory', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) ); $return .= << IPSCONTENT; $return .= \IPS\Theme\CustomTemplate::getCustomTemplatesForHookPoint( "core/front/staffdirectory/template", "title:after", [ $groups,$userIsStaff ] ); $return .= << IPSCONTENT; $return .= \IPS\Theme\CustomTemplate::getCustomTemplatesForHookPoint( "core/front/staffdirectory/template", "header:after", [ $groups,$userIsStaff ] ); $return .= << IPSCONTENT; $return .= \IPS\Theme\CustomTemplate::getCustomTemplatesForHookPoint( "core/front/staffdirectory/template", "buttons:inside-start", [ $groups,$userIsStaff ] ); $return .= << IPSCONTENT; $return .= \IPS\Member::loggedIn()->language()->addToStack( htmlspecialchars( 'leader_edit_mine', ENT_DISALLOWED, 'UTF-8', FALSE ), TRUE, array( ) ); $return .= << IPSCONTENT; $return .= \IPS\Theme\CustomTemplate::getCustomTemplatesForHookPoint( "core/front/staffdirectory/template", "buttons:inside-end", [ $groups,$userIsStaff ] ); $return .= << IPSCONTENT; $return .= \IPS\Theme\CustomTemplate::getCustomTemplatesForHookPoint( "core/front/staffdirectory/template", "buttons:after", [ $groups,$userIsStaff ] ); $return .= << IPSCONTENT; foreach ( $groups as $group ): $return .= <<members(); $return .= <<

IPSCONTENT; $return .= \IPS\Theme\Template::htmlspecialchars( $group->_title, ENT_QUOTES | ENT_DISALLOWED, 'UTF-8', FALSE ); $return .= <<
IPSCONTENT; foreach ( $members as $member ): $return .= <<getTemplate( "staffdirectory", "core", 'front' )->{$group->template}( $member ); $return .= <<
IPSCONTENT; endif; $return .= <<