PluginProbe ʕ •ᴥ•ʔ
Kubio AI Page Builder / 2.1.1
Kubio AI Page Builder v2.1.1
2.9.1 2.9.0 2.8.6 2.8.5 2.8.4 2.8.3 2.8.2 2.8.1 trunk 1.0.0 1.0.1 1.1.0 1.2.0 1.2.1 1.2.2 1.2.3 1.3.0 1.3.1 1.3.2 1.4.0 1.4.1 1.4.2 1.4.3 1.5.0 1.6.0 1.6.1 1.6.2 1.6.3 1.6.4 1.7.0 1.7.1 1.7.2 1.7.3 1.8.0 1.8.1 1.8.2 1.9.0 2.0.0 2.1.1 2.1.2 2.1.3 2.2.0 2.2.3 2.2.4 2.2.5 2.3.0 2.3.1 2.3.3 2.3.4 2.4.0 2.4.1 2.4.2 2.4.3 2.4.5 2.5.0 2.5.1 2.5.2 2.5.3 2.6.0 2.6.1 2.6.2 2.6.3 2.6.5 2.6.6 2.6.7 2.7.0 2.7.1 2.7.2 2.7.3 2.8.0
kubio / lib / AI / SDApi / KubioImageSearch.php
kubio / lib / AI / SDApi Last commit date
KubioCloudSDApi.php 2 years ago KubioImageGenerate.php 2 years ago KubioImageManager.php 2 years ago KubioImagePrompts.php 2 years ago KubioImageSearch.php 2 years ago sd-endpoints.php 2 years ago
KubioImageSearch.php
77 lines
1 <?php
2 namespace Kubio\Ai;
3 use IlluminateAgnostic\Arr\Support\Arr;
4 use Kubio\Core\Importer;
5
6 class KubioImageSearch {
7 public function search( $request, $settings = array() ) {
8 $dimensions = $this->get_image_dimensions( $request );
9 $api_url = 'v1/search-media';
10 $ai_prompt = Arr::get( $request, 'aiPrompt', '' );
11 $search = Arr::get( $request, 'search', '' );
12
13 if ( $ai_prompt === '' ) {
14 $api_url = 'v1/prompt-search-media';
15 } else {
16 $search = $ai_prompt;
17 }
18
19 $response = kubio_ai_call_api(
20 $api_url,
21 array_merge(
22 $dimensions,
23 array(
24 'type' => 'image',
25 'prompt' => $search,
26 'search' => $search,
27 'per_page' => Arr::get( $request, 'perPage', 10 ),
28 'page' => Arr::get( $request, 'page', 1 ),
29 'size' => Arr::get( $request, 'imageSize', 'medium' ),
30 'orientation' => Arr::get( $request, 'imageOrientation', 'portrait' ),
31 'media_attrs' => array(
32 'src.medium',
33 ),
34 )
35 )
36 );
37
38 return $response;
39 }
40
41 public function save( $request ) {
42 $image = Arr::get( $request, 'selectedImage', 10 );
43 $file = Importer::importRemoteFile( $image );
44
45 return array( 'content' => $file );
46 }
47
48 public function get_image_dimensions( $request ) {
49 $dimensions = array();
50
51 if ( Arr::get( $request, 'initialImage', '' ) ) {
52 // original
53 $dimensions = kubio_ai_get_original_image_dimensions( Arr::get( $request, 'initialImage', '' ) );
54 } else {
55 $width = Arr::get( $request, 'width', null );
56 $height = Arr::get( $request, 'height', null );
57
58 if ( $width ) {
59 $dimensions['width'] = $width;
60 }
61
62 if ( $height ) {
63 $dimensions['height'] = $height;
64 }
65 }
66
67 $orientation = Arr::get( $request, 'orientation', null );
68 if ( $orientation ) {
69 $dimensions['orientation'] = $orientation;
70 }
71
72 return $dimensions;
73
74 }
75
76 }
77