58 $this->CachedMultyFS =
get_package(
'cached_multy_fs' ,
'last' , __FILE__ );
59 $this->CategoryAccess =
get_package(
'category::category_access' ,
'last' , __FILE__ );
60 $this->CategoryAlgorithms =
get_package(
'category::category_algorithms' ,
'last' , __FILE__ );
61 $this->CategoryView =
get_package(
'category::category_view' ,
'last' , __FILE__ );
62 $this->String =
get_package(
'string' ,
'last' , __FILE__ );
92 private function get_null_category( &$Settings )
98 if( $Settings->get_setting(
'null_category' ,
false ) !== false )
100 $Id = $Settings->get_setting(
'null_category' );
102 $Title = $Settings->get_setting(
'null_category_title' ,
'' );
104 $NullCategory =
"SELECT $Id AS id , '{lang:$Title}' AS value UNION ";
107 return( $NullCategory );
109 catch( Exception $e )
141 list( $Name , $Default , $Class ) = $Settings->get_settings(
142 'name,default,class' ,
'category,0,width_160 flat'
145 $Default = $Default == 0 ?
'' :
"default=$Default;";
146 $NullCategory = $this->get_null_category( $Settings );
147 $Id = $this->CategoryView->get_category_id( $Settings );
148 $Value = $Settings->get_setting(
'value' ,
false );
150 $Code =
"{select:$Default".
"class=$Class;name=$Name;query=$NullCategory SELECT id , title as ".
151 "`value` FROM umx_category WHERE direct_category![eq]id AND direct_category IN ( $Id )".
152 ( $Value ?
";value=$Value" :
'' ).
"}";
156 catch( Exception $e )
188 $Names = $Settings->get_setting(
'names' ,
'' );
190 $Names = $Settings->get_setting(
'name' , $Names );
192 $Ids = implode(
',' , $this->CategoryAlgorithms->get_category_ids( $Names ) );
196 catch( Exception $e )
228 $CategoryId = $Settings->get_setting(
'id' );
230 $SiblingsIds = implode(
',' , $this->CategoryAccess->get_siblings_ids( $CategoryId ) );
232 return( $SiblingsIds );
234 catch( Exception $e )
266 $Category = $this->CategoryAlgorithms->get_by_id( $Settings->get_setting(
'id' ) );
268 $Title =
get_field( $Category ,
'title' );
272 catch( Exception $e )