DBA Data[Home] [Help]

PACKAGE BODY: APPS.ICX_CHANGE_LANGUAGE

Source


1 PACKAGE BODY ICX_CHANGE_LANGUAGE as
2 /* $Header: ICXCLANB.pls 120.0 2005/10/07 12:13:07 gjimenez noship $ */
3 
4   procedure show_languages is
5 l_title varchar2(80);
6 l_helpmsg varchar2(240);
7 l_helptitle varchar2(240);
8 l_actions icx_cabo.actionTable;
9 l_toolbar icx_cabo.toolbar;
10 username varchar2(30);
11 c_error_msg		varchar2(2000);
12 c_login_msg		varchar2(2000);
13 l_agent                 varchar2(240);
14 l_dbhost                varchar2(240);
15 l_prompts icx_util.g_prompts_table;--added mputman bug 1402459
16 
17 begin
18 
19     htp.headopen;
20     htp.p('<SCRIPT>');
21 
22     icx_admin_sig.help_win_script('GENPREF', null, 'FND');
23     icx_util.getprompts(601, 'ICX_OBIS_TOOLBAR', l_title, l_prompts);--added mputman bug 1402459
24 
25     htp.p('</SCRIPT>');
26     htp.headclose;
27 
28   -- Check session and current user
29   wfa_sec.GetSession(username);
30   username := upper(username);
31 
32   l_toolbar.title := wf_core.translate('ICX_LANG_PREF');
33   l_toolbar.help_url := 'javascript:top.help_window()';
34   fnd_message.set_name('ICX','ICX_HELP');
35   l_toolbar.help_mouseover := FND_MESSAGE.GET;
36 
37   if icx_sec.g_mode_code in ( '115J', '115P') then
38      l_toolbar.menu_url :=owa_util.get_cgi_env('SCRIPT_NAME')||'/OracleNavigate.Responsibility';--added mputman bug 1402459
39      l_toolbar.menu_mouseover := l_prompts(7); -- from region ICX_OBIS_TOOLBAR added mputman bug 1402459
40   end if;
41 
42   IF (icx_sec.g_mode_code <> 'SLAVE') THEN
43   --mputman isolated menubutton to exclude slave mode 1747045
44   --nlbarlow added for Portal support
45   l_toolbar.custom_option1_url := icx_plug_utilities.getPLSQLagent ||
46                                   'OracleMyPage.Home';
47   l_toolbar.custom_option1_mouseover := wf_core.translate('RETURN_TO_HOME');
48   l_toolbar.custom_option1_gif := '/OA_MEDIA/FNDHOME.gif';
49   l_toolbar.custom_option1_mouseover_gif := '/OA_MEDIA/FNDHOME.gif';
50   END IF;
51 
52   l_helpmsg :=  wf_core.translate('ICX_LANG_PREF');
53   --l_helpmsg := '';
54   l_helptitle := wf_core.translate('ICX_LANG_PREF');
55 
56   icx_cabo.container(p_toolbar => l_toolbar,
57                p_helpmsg => l_helpmsg,
58                p_helptitle => l_helptitle,
59                p_url => owa_util.get_cgi_env('SCRIPT_NAME')||'/icx_change_language.show_languages_local?p_message_flag=N',
60                p_action => TRUE);
61 
62 
63 exception
64    when others then
65       fnd_message.set_name('ICX','ICX_SESSION_FAILED');
66       c_error_msg := fnd_message.get;
67       fnd_message.set_name('ICX','ICX_SIGNIN_AGAIN');
68       c_login_msg := fnd_message.get;
69 
70       OracleApps.displayLogin(c_error_msg||' '||c_login_msg,'IC','Y');
71 end;
72 
73 
74 -- *****************************************************
75 --          show_languages_local
76 -- *****************************************************
77 
78 procedure show_languages_local(p_message_flag VARCHAR2) is
79 
80   cursor get_lang is
81 	SELECT LANGUAGE_CODE,
82 	       NLS_LANGUAGE,
83 	       DESCRIPTION,
84 	       ISO_LANGUAGE,
85 	       ISO_TERRITORY
86 	FROM   FND_LANGUAGES_VL
87 	WHERE  INSTALLED_FLAG in ('I', 'B')
88         ORDER BY DESCRIPTION;
89 
90   c_title         varchar2(80);
91   c_prompts       icx_util.g_prompts_table;
92   v_lang	  varchar2(5);
93 
94 l_actions    icx_cabo.actionTable;
95 l_actiontext varchar2(2000);
96 
97   begin
98 
99    -- Check if session is valid
100    if icx_sec.validatesession('ICX_CH_LANG') then
101     -- get language code
102     v_lang := icx_sec.getID(icx_sec.PV_LANGUAGE_CODE);
103 
104     icx_util.getPrompts(601,'ICX_CHANGE_LANG',c_title,c_prompts);
105 
106     htp.htmlOpen;
107     htp.headOpen;
108     htp.title(c_title);
109     js.scriptOpen;
110     icx_admin_sig.help_win_script('/OA_DOC/' || v_lang ||
111 	 			  '/aic/icxhlpln.htm');
112 
113 
114     if icx_sec.g_mode_code in ( '115J', '115P') then
115        htp.p('function cancelpref() {
116               top.location.href = "'||owa_util.get_cgi_env('SCRIPT_NAME')||'/OracleNavigate.Responsibility";
117              }'); -- updated mputman 1402459
118     else
119        htp.p('function cancelpref() {
120              top.location.href = "'||wfa_html.base_url ||'/OracleNavigate.Responsibility";
121        }');
122     end if;
123 
124     htp.p('function savepref() {
125 
126 	document.lang.submit();
127 
128         }');
129 
130 --        top.location.href = "'||wfa_html.base_url ||'/oraclemypage.home";
131 
132 
133     js.scriptClose;
134 --    icx_admin_sig.toolbar(language_code => v_lang);
135 
136     htp.p('<CENTER>');
137 
138     htp.br;
139     htp.p('<FORM ACTION="ICX_CHANGE_LANGUAGE.set_new_language" NAME="lang">');
140     htp.p(c_prompts(1));
141     htp.p('<SELECT NAME="v_language" SIZE="1">');
142     for prec in get_lang loop
143  	if (prec.LANGUAGE_CODE = v_lang) then
144            htp.p('<OPTION VALUE="' || prec.NLS_LANGUAGE ||
145 		 '" SELECTED> ' || prec.description || ' [' ||
146 		 prec.ISO_LANGUAGE || '-' || prec.ISO_TERRITORY || ']');
147 	else
148 	   htp.p('<OPTION VALUE="' || prec.NLS_LANGUAGE ||
149 		'"> ' || prec.description || ' [' ||
150                  prec.ISO_LANGUAGE || '-' || prec.ISO_TERRITORY || ']');
151 	end if;
152     end loop;
153     htp.p('</SELECT>');
154     htp.p('</FORM>');
155 
156     htp.p('</CENTER>');
157     htp.p('<BR>');
158 
159 /*
160   icx_util.DynamicButton(P_ButtonText => c_prompts(2),
161 			 P_ImageFileName => 'FNDBSBMT',
162 			 P_OnMouseOverText => c_prompts(2),
163 			 P_HyperTextCall =>'javascript:document.lang.submit()',
164 			 P_LanguageCode => v_lang,
165 			 P_JavaScriptFlag => FALSE);
166 */
167 
168 
169    l_actions(0).name := 'Cancel';
170    l_actions(0).text := wf_core.translate('CANCEL');
171    l_actions(0).actiontype := 'function';
172    l_actions(0).action := 'top.main.cancelpref()';  -- put your own commands here
173    l_actions(0).targetframe := 'main';
174    l_actions(0).enabled := 'b_enabled';
175    l_actions(0).gap := 'b_narrow_gap';
176 
177    l_actions(1).name := 'Save';
178    l_actions(1).text :=  wf_core.translate('APPLY');
179    l_actions(1).actiontype := 'function';
180    l_actions(1).action := 'top.main.savepref()';  -- put your own commands here
181    l_actions(1).targetframe := 'main';
182    l_actions(1).enabled := 'b_enabled';
183    l_actions(1).gap := 'b_narrow_gap';
184 
185    if p_message_flag = 'N' then
186       icx_cabo.buttons(p_actions => l_actions);
187    else
188       fnd_message.set_name('ICX','ICX_SUCCESS_CONFIRM');
189       l_actiontext := fnd_message.get;
190 
191       icx_cabo.buttons(p_actions    => l_actions,
192                        p_actiontext => l_actiontext);
193    end if;
194 
195     htp.p('</BODY>');
196     htp.htmlClose;
197 
198  end if;
199 
200 end;
201 
202 
203 
204 
205 --------------------------------------------------------------------
206   procedure set_new_language(v_language IN varchar2) is
207 --------------------------------------------------------------------
208 v_decrypted_lang	varchar2(30);
209 v_nls_territory		varchar2(30);
210 n_session_id		number;
211 l_language_code         varchar2(30);
212 l_agent           VARCHAR2(2000); --added mputman bug 1405228
213 l_url             VARCHAR2(2000); --added mputman bug 1405228
214 p_db_nls_language varchar2(80);
215 p_db_nls_date_format varchar2(30);
216 p_db_nls_date_language varchar2(80);
217 p_db_nls_numeric_characters varchar2(5);
218 p_db_nls_sort varchar2(30);
219 p_db_nls_territory varchar2(80);
220 p_db_nls_charset varchar2(80);
221 
222 
223 begin
224 
225    -- Check if session is valid
226    if icx_sec.validatesession('ICX_CH_LANG')
227    then
228 
229       select  language_code
230       into    l_language_code
231       from    fnd_languages
232       where   nls_language = v_language;
233 
234       fnd_global.set_nls(
235               p_nls_language => v_LANGUAGE,
236               p_nls_date_format => NULL,
237               p_nls_date_language => NULL,
238               p_nls_numeric_characters => NULL,
239               p_nls_sort => NULL,
240               p_nls_territory => NULL,
241               p_db_nls_language => p_db_nls_language,
242               p_db_nls_date_format => p_db_nls_date_format,
243               p_db_nls_date_language => p_db_nls_date_language,
244               p_db_nls_numeric_characters => p_db_nls_numeric_characters,
245               p_db_nls_sort => p_db_nls_sort,
246               p_db_nls_territory => p_db_nls_territory,
247               p_db_nls_charset => p_db_nls_charset);
248 
249 
250       update icx_sessions
251       set    nls_language = v_language,
252              language_code = l_language_code,
253              nls_date_language = p_db_nls_date_language
254       where  session_id = icx_sec.g_session_id;
255 
256       --show_languages_local;
257       --if added mputman bug 1405228
258       IF (substr(icx_plug_utilities.getPLSQLagent, 1, 1) = '/') then
259             l_agent := FND_WEB_CONFIG.WEB_SERVER||substr(icx_plug_utilities.getPLSQLagent,2);
260 
261          ELSE
262             l_agent := FND_WEB_CONFIG.WEB_SERVER||icx_plug_utilities.getPLSQLagent;
263 
264          end if;
265 
266          l_url:=l_agent||'ICX_CHANGE_LANGUAGE.show_languages';
267          l_url:='"'||l_url||'"';
268 
269          htp.p('
270 
271 
272                <script language="JavaScript">
273                function menuBypass(url){
274                top.location=url;
275                }
276                </script>
277 
278                <frameset cols="100%,*" frameborder=no border=0>
279 
280                <frame
281                 src=javascript:parent.menuBypass('||l_url||')
282                 name=hiddenFrame1
283                 marginwidth=0
284                 marginheight=0
285                 scrolling=no>
286 
287 
288                </frameset>
289 
290                ');--end mputman bug 1405228
291 
292    end if;
293 
294 null;
295 end;
296 
297 end ICX_CHANGE_LANGUAGE;