| @@ -96,13 +96,14 @@ | ||
| 96 | 96 | |
| 97 | 97 | |
| 98 | 98 | public function getSlidersList() { |
| 99 | 99 | $list = [ |
| 100 | - 0 => __( 'Select Slider', 'depicter' ) | |
| 100 | + '0' => __( 'Select Slider', 'depicter' ) | |
| 101 | 101 | ]; |
| 102 | - $documents = \Depicter::documentRepository()->getList(); | |
| 102 | + $documents = \Depicter::documentRepository()->select( ['id', 'name'] )->orderBy('modified_at', 'DESC')->findAll()->get(); | |
| 103 | + $documents = $documents ? $documents->toArray() : []; | |
| 103 | 104 | foreach( $documents as $document ) { |
| 104 | - $list[ $document['id'] ] = "[#{$document['id']}]: " . $document['name']; | |
| 105 | + $list[ "#" . $document['id'] ] = "[#{$document['id']}]: " . $document['name']; | |
| 105 | 106 | } |
| 106 | 107 | return $list; |
| 107 | 108 | } |
| 108 | 109 | |
| @@ -133,32 +134,36 @@ | ||
| 133 | 134 | 'label' => __('Select a Depicter slider','depicter' ), |
| 134 | 135 | 'type' => Controls_Manager::SELECT, |
| 135 | 136 | 'label_block' => 'true', |
| 136 | 137 | 'options' => $this->getSlidersList(), |
| 137 | - 'default' => 0 | |
| 138 | + 'default' => '0' | |
| 138 | 139 | ] |
| 139 | 140 | ); |
| 140 | 141 | |
| 141 | - $documents = \Depicter::documentRepository()->getList(); | |
| 142 | + $documents = \Depicter::documentRepository()->select( ['id', 'name', 'status'] )->orderBy('modified_at', 'DESC')->findAll()->get(); | |
| 143 | + $documents = $documents ? $documents->toArray() : []; | |
| 142 | 144 | foreach( $documents as $key => $document ) { |
| 143 | 145 | |
| 144 | 146 | $args = [ |
| 145 | - 'isNotPublished' => \Depicter::documentRepository()->isNotPublished( $document['id'], [ 'status' => 'publish' ] ), | |
| 146 | - 'documentStatus' => $document['status'] | |
| 147 | + 'isPublishedBefore' => \Depicter::documentRepository()->isPublishedBefore( $document['id'] ), | |
| 148 | + 'documentStatus' => $document['status'], | |
| 149 | + 'documentID' => $document['id'] | |
| 147 | 150 | ]; |
| 148 | 151 | |
| 149 | 152 | $markup = \Depicter::view('admin/notices/builders-draft-notice')->with('view_args', $args)->toString(); |
| 150 | 153 | |
| 151 | - $this->add_control( | |
| 152 | - 'slider_control_buttons_' . $key, | |
| 153 | - [ | |
| 154 | - 'type' => Controls_Manager::RAW_HTML, | |
| 155 | - 'raw' => $markup, | |
| 156 | - 'condition' => [ | |
| 157 | - 'slider_id' => $document['id'] | |
| 154 | + if ( current_user_can( 'access_depicter' ) ) { | |
| 155 | + $this->add_control( | |
| 156 | + 'slider_control_buttons_' . $key, | |
| 157 | + [ | |
| 158 | + 'type' => Controls_Manager::RAW_HTML, | |
| 159 | + 'raw' => $markup, | |
| 160 | + 'condition' => [ | |
| 161 | + 'slider_id' => '#' . $document['id'] | |
| 162 | + ] | |
| 158 | 163 | ] |
| 159 | - ] | |
| 160 | - ); | |
| 164 | + ); | |
| 165 | + } | |
| 161 | 166 | } |
| 162 | 167 | |
| 163 | 168 | $this->end_controls_section(); |
| 164 | 169 | } |
| @@ -175,9 +180,9 @@ | ||
| 175 | 180 | |
| 176 | 181 | $settings = $this->get_settings_for_display(); |
| 177 | 182 | |
| 178 | 183 | if ( $settings['slider_id'] ) { |
| 179 | - echo \Depicter::front()->render()->document( $settings['slider_id'] ); | |
| 184 | + echo \Depicter::front()->render()->document( ltrim( $settings['slider_id'], '#' ) ); | |
| 180 | 185 | } else { |
| 181 | 186 | echo esc_html__('Please select a Depicter slider','depicter' ); |
| 182 | 187 | } |
| 183 | 188 | |