Team Ai
Datasetpublic

codekingpro/portable-devtools

sourceHugging Faceupdated 5mo agoView on Hugging Face
1likes14kdownloads
__init__.py88 linesDownload Raw Back to search_objects
1##########################################################################2#3# pgAdmin 4 - PostgreSQL Tools4#5# Copyright (C) 2013 - 2024, The pgAdmin Development Team6# This software is released under the PostgreSQL Licence7#8##########################################################################9 10"""Implements Search Object feature"""11 12from flask import request13from flask_babel import gettext14from pgadmin.user_login_check import pga_login_required15 16from pgadmin.utils import PgAdminModule17from pgadmin.utils.ajax import make_json_response, bad_request,\18    internal_server_error19from pgadmin.utils.preferences import Preferences20from pgadmin.tools.search_objects.utils import SearchObjectsHelper21 22MODULE_NAME = 'search_objects'23 24 25class SearchObjectsModule(PgAdminModule):26    LABEL = gettext('Search objects')27 28    def get_exposed_url_endpoints(self):29        """30        Returns:31            list: URL endpoints for search_object module32        """33        return ['search_objects.search', 'search_objects.types']34 35    def show_system_objects(self):36        """37        return system preference objects38        """39        return self.pref_show_system_objects.get()40 41    def register_preferences(self):42        """43        Get show_system_objects preference44        """45        browser_preference = Preferences.module('browser')46        self.pref_show_system_objects =\47            browser_preference.preference('show_system_objects')48 49 50# Create blueprint for BackupModule class51blueprint = SearchObjectsModule(52    MODULE_NAME, __name__, static_url_path=''53)54 55 56@blueprint.route("/", endpoint='index')57@pga_login_required58def index():59    return bad_request(errormsg=gettext("This URL cannot be called directly."))60 61 62@blueprint.route("types/<int:sid>/<int:did>", endpoint='types')63@pga_login_required64def types(sid, did):65    so_obj = SearchObjectsHelper(sid, did, blueprint.show_system_objects())66    return make_json_response(data=so_obj.get_supported_types())67 68 69@blueprint.route("search/<int:sid>/<int:did>", endpoint='search')70@pga_login_required71def search(sid, did):72    """73    URL args:74        text <required>: search text75        type <optional>: type of object to be searched.76    """77    text = request.args.get('text', None)78    obj_type = request.args.get('type', None)79 80    so_obj = SearchObjectsHelper(sid, did, blueprint.show_system_objects())81 82    status, res = so_obj.search(text, obj_type)83 84    if not status:85        return internal_server_error(errormsg=res)86 87    return make_json_response(data=res)88 
codekingpro/portable-devtools · Team Ai