- Timestamp:
- 2009-03-11T09:20:22+01:00 (16 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/org/openstreetmap/josm/actions/HelpAction.java
r1449 r1482 62 62 if (e.getURL() == null) 63 63 help.setText("<html>404 not found</html>"); 64 else if (e.getURL().toString(). startsWith(WikiReader.JOSM_EXTERN))65 OpenBrowser.displayUrl( "http://"+e.getURL().toString().substring(WikiReader.JOSM_EXTERN.length())+"?action=edit");64 else if (e.getURL().toString().endsWith("action=edit")) 65 OpenBrowser.displayUrl(e.getURL().toString()); 66 66 else 67 67 setHelpUrl(e.getURL().toString()); … … 168 168 title = languageCode + title; 169 169 String langurl = url.substring(0, i) + title; 170 if(langurl.equals(this.url) || langurl.equals(url)) 170 boolean loaded = false; 171 if(!langurl.equals(this.url) && !langurl.equals(url)) 171 172 { 172 this.url = url; 173 try { 174 help.read(new StringReader(reader.read(url)), help.getEditorKit().createDefaultDocument()); 175 } catch (IOException ex) { 176 help.setText(tr("Error while loading page {0}",url)); 177 } 173 loaded = loadHelpUrl(url, langurl, true); 178 174 } 179 else 180 { 181 try { 182 help.read(new StringReader(reader.read(langurl)), help.getEditorKit().createDefaultDocument()); 183 String message = help.getText(); 184 String le = "http://josm-extern." + langurl.substring(7); 185 if(message.indexOf("Describe "") >= 0 && message.indexOf(le) >= 0) 186 throw new IOException(); 187 if(message.indexOf(" Describe ") >= 0) 188 throw new IOException(); 189 this.url = langurl; 190 } catch (IOException e) { 191 this.url = url; 192 try { 193 help.read(new StringReader(reader.read(url)), help.getEditorKit().createDefaultDocument()); 194 } catch (IOException ex) { 195 help.setText(tr("Error while loading page {0}",url)); 175 if(!loaded) 176 loaded = loadHelpUrl(url, langurl, false); 177 if(!loaded) 178 help.setText(tr("Error while loading page {0}",url)); 179 helpBrowser.setVisible(true); 180 } 181 182 private boolean loadHelpUrl(String url, String langurl, boolean lang) 183 { 184 this.url = lang ? langurl : url; 185 boolean loaded = false; 186 try { 187 help.read(new StringReader(reader.read(this.url)), 188 help.getEditorKit().createDefaultDocument()); 189 if(help.getText().indexOf(" Describe ") >= 0) 190 { 191 if(lang) 192 throw new IOException(); 193 else 194 { 195 if(url.equals(langurl)) 196 { 197 help.setText("<HTML>"+tr("Helppage missing. Create it in <A HREF=\"{0}\">english</A>.", 198 url+"?action=edit")+"</HTML>"); 196 199 } 197 } 198 } 199 helpBrowser.setVisible(true); 200 else 201 { 202 help.setText("<HTML>"+tr("Helppage missing. Create it in <A HREF=\"{0}\">english</A> or <A HREF=\"{1}\">your language</A>.", 203 url+"?action=edit", langurl+"?action=edit")+"</HTML>"); 204 } 205 } 206 } 207 loaded = true; 208 } catch (IOException ex) { 209 } 210 return loaded; 200 211 } 201 212
Note:
See TracChangeset
for help on using the changeset viewer.