2

enter image description here

I tried to add Arabic letters at the Browse page by using the below code but i did not succeeded,the Arabic Letters were not appearing at the Browse page.

The code which i tried is as below:-

else
        {
            // Create a clickable list of the alphabet
        List jumpList = jump.addList("jump-list", List.TYPE_SIMPLE, "alphabet");


            // browse params for each letter are all the query params
            // WITHOUT the second-stage browse value, and add STARTS_WITH.
  Map<String, String> letterQuery = new HashMap<String, String>(queryParamsGET);
            for (String valueKey : BrowseParams.FILTER_VALUE)
            {
                letterQuery.remove(valueKey);
            }
            letterQuery.put(BrowseParams.STARTS_WITH, "0");
   jumpList.addItemXref(super.generateURL(BROWSE_URL_BASE, letterQuery), "0-9");

            for (char c = 'A'; c <= 'Z'; c++)
            {
             letterQuery.put(BrowseParams.STARTS_WITH, Character.toString(c));
jumpList.addItemXref(super.generateURL(BROWSE_URL_BASE, letterQuery), Character
                        .toString(c));
            }

        //I HAVE ADDED BELOW CODE TO CREATE A BROWSE LIST FOR ARABIC TEXT

            // I HAVE CREATED A LIST FOR ARABIC CHARACTERS 
    List jumpList2 = jump.addList("jump-list2", List.TYPE_SIMPLE, "alphabet");

              // I HAVE CREATED A HASHMAP FOR ARABIC CHARACTERS 
      Map<String, String> ddQuery = new HashMap<String, String>(queryParamsGET);
            for (String valueKey : BrowseParams.FILTER_VALUE)
            {
                ddQuery.remove(valueKey);
            } 

            //I HAVE ADDED BELOW CODE TO CREATE A BROWSE LIST FOR ARABIC TEXT
            for (char d = 'ا'; d <= 'ى'; d++)

            {   
         ddQuery.put(BrowseParams.STARTS_WITH, Character.toString(d));
 jumpList2.addItemXref(super.generateURL(BROWSE_URL_BASE, ddQuery), Character
                        .toString(d));
            }  
STF
  • 1,485
  • 3
  • 19
  • 36
Mansoor
  • 21
  • 1

1 Answers1

1

I do it with javascript because i cant rebuild dspace.

window.addEventListener('DOMContentLoaded', function(event){
    var elem = jQuery('ul.alphabet.list-inline li:first-child').clone()
    if (elem.length){
        jQuery('ul.alphabet.list-inline').append('&lt;br&gt;')
        var href = elem.children('a').attr('href');
        var str = 'ابپتثجچحخدذرزژسشصضطظعغفقکگلمنوهی'
        for (var i = 0; i != str.length ; i++){
            var c = str.charAt(i)
            elem.children('a').text(c)
            elem.children('a').attr('href',href.replace('starts_with=0','starts_with='+c));
            jQuery('ul.alphabet.list-inline').append(elem.clone())
            jQuery('ul.alphabet.list-inline').append(' ')
        }
    }
});
Peyman Mohamadpour
  • 17,954
  • 24
  • 89
  • 100
Alireza
  • 11
  • 1