You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@bloodhound.apache.org by Thimal Kempitiya <tk...@gmail.com> on 2014/06/16 17:00:39 UTC

Re: svn commit: r1602884 - /bloodhound/bep_0013_dynamic_clientside_features/bloodhound_theme/bhtheme/theme.py

added the autocompletion for user, cc, and keywords fields in modify ticket
page


On Mon, Jun 16, 2014 at 8:28 PM, <th...@apache.org> wrote:

> Author: thimal
> Date: Mon Jun 16 14:58:27 2014
> New Revision: 1602884
>
> URL: http://svn.apache.org/r1602884
> Log:
> add autocompletion in modify ticket page
>
> Modified:
>
> bloodhound/bep_0013_dynamic_clientside_features/bloodhound_theme/bhtheme/theme.py
>
> Modified:
> bloodhound/bep_0013_dynamic_clientside_features/bloodhound_theme/bhtheme/theme.py
> URL:
> http://svn.apache.org/viewvc/bloodhound/bep_0013_dynamic_clientside_features/bloodhound_theme/bhtheme/theme.py?rev=1602884&r1=1602883&r2=1602884&view=diff
>
> ==============================================================================
> ---
> bloodhound/bep_0013_dynamic_clientside_features/bloodhound_theme/bhtheme/theme.py
> (original)
> +++
> bloodhound/bep_0013_dynamic_clientside_features/bloodhound_theme/bhtheme/theme.py
> Mon Jun 16 14:58:27 2014
> @@ -698,11 +698,10 @@ class AutocompleteUsers(Component):
>      # IRequestHandler methods
>
>      def match_request(self, req):
> -        return req.path_info.rstrip('/') == '/user_list'
> +        return req.path_info.rstrip('/') == '/user_list' or
> req.path_info.rstrip('/') == '/ticket/user_list'
>
>      def process_request(self, req):
>
> -        subjects = ['admin','adam','test','user1']
>          if req.args.get('users', '1') == '1':
>              users = self._get_users(req)
>              subjects = ['{"label":"%s %s %s","value":"%s"}' % (user[USER]
> and '%s' % user[USER] or '',
> @@ -754,30 +753,54 @@ class AutocompleteUsers(Component):
>          if filename == 'bh_ticket.html':
>
>              restrict_owner = self.env.config.getbool('ticket',
> 'restrict_owner')
> +            if req.path_info.startswith('/ticket/'):
> +                js = """$(document).bind('DOMSubtreeModified', function
> (){
> +                            $( "#field-cc" ).autocomplete({
> +                                source: "user_list"
> +                                multiple: true,
> +                                formatItem: formatItem,
> +                                delay: 100
> +                            });
> +                        });"""
> +                if not restrict_owner:
> +                    js = """$(document).bind('DOMSubtreeModified',
> function (){
> +
> +                            $( "#field-cc" ).autocomplete({
> +                                source: "user_list",
> +                                multiple: true,
> +                                formatItem: formatItem,
> +                                delay: 100
> +                            });
> +                            $( "#field-reporter" ).autocomplete({
> +                                source: "user_list",
> +                                formatItem: formatItem
> +                            });
> +                        });"""
> +            else:
>
> -            js = """jQuery(document).ready(function($) {
> -
> -                        $( "#field-cc" ).autocomplete({
> -                            source: "user_list"
> -                            multiple: true,
> -                            formatItem: formatItem,
> -                            delay: 100
> -                        });
> -                    });"""
> -            if not restrict_owner:
>                  js = """jQuery(document).ready(function($) {
>
> -                        $( "#field-cc" ).autocomplete({
> -                            source: "user_list",
> -                            multiple: true,
> -                            formatItem: formatItem,
> -                            delay: 100
> -                        });
> -                        $( "#field-reporter" ).autocomplete({
> -                            source: "user_list",
> -                            formatItem: formatItem
> -                        });
> -                    });"""
> +                            $( "#field-cc" ).autocomplete({
> +                                source: "user_list"
> +                                multiple: true,
> +                                formatItem: formatItem,
> +                                delay: 100
> +                            });
> +                        });"""
> +                if not restrict_owner:
> +                    js = """jQuery(document).ready(function($) {
> +
> +                            $( "#field-cc" ).autocomplete({
> +                                source: "user_list",
> +                                multiple: true,
> +                                formatItem: formatItem,
> +                                delay: 100
> +                            });
> +                            $( "#field-reporter" ).autocomplete({
> +                                source: "user_list",
> +                                formatItem: formatItem
> +                            });
> +                        });"""
>              stream = stream |
> Transformer('.//head').append(tag.script(Markup(js),
>
> type='text/javascript'))
>
> @@ -907,16 +930,30 @@ class KeywordSuggestModule(Component):
>              keywords = []
>
>          if filename == 'bh_ticket.html':
> -            js = """jQuery(document).ready(function($) {
> +            if req.path_info.startswith('/ticket/'):
> +                js = """
> +                jQuery(document).ready(function($) {
> +                $('#field-keywords').bind('DOMSubtreeModified', function
> (){
>                          var keywords =  %(keywords)s
> -
> -
>                          $('%(field)s').tagsinput({
>                              typeahead: {
>                                  source: keywords
>                                  }
>                              });
> -                    });"""
> +                            });
> +                    });
> +                    """
> +            else:
> +                js = """jQuery(document).ready(function($) {
> +                            var keywords =  %(keywords)s
> +
> +
> +                            $('%(field)s').tagsinput({
> +                                typeahead: {
> +                                    source: keywords
> +                                    }
> +                                });
> +                        });"""
>
>          if filename == 'bh_query.html':
>              js = """$(document).ready(function ($) {
>
>
>


-- 




*Thimal Kempitiya <http://www.facebook.com/thimalk> UndergraduateDepartment
of Computer Science and Engineering University of Moratuwa.*