mirror of
				https://github.com/KevinMidboe/linguist.git
				synced 2025-10-29 17:50:22 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			55 lines
		
	
	
		
			2.2 KiB
		
	
	
	
		
			OpenEdge ABL
		
	
	
	
	
	
			
		
		
	
	
			55 lines
		
	
	
		
			2.2 KiB
		
	
	
	
		
			OpenEdge ABL
		
	
	
	
	
	
public class GeoUtils {
 | 
						|
	// generate a KML string given a page reference, call getContent() 
 | 
						|
	// then cleanup the output.
 | 
						|
	public static string generateFromContent(PageReference pr) { 
 | 
						|
		string ret = ''; 
 | 
						|
		try {  
 | 
						|
	        ret = (string) pr.getContent().toString();
 | 
						|
			
 | 
						|
			ret = ret.replaceAll('"','\'' ); // get content produces quote chars \"  
 | 
						|
	        ret = ret.replaceAll( '&','&');// we need to escape these in the node value
 | 
						|
        } catch (exception e ) { 
 | 
						|
        	system.debug( 'ERROR '+e); 
 | 
						|
        }
 | 
						|
   		
 | 
						|
   		ret = ret.replaceAll('\n',' ');	// must use ALL since many new line may get 
 | 
						|
        ret = ret.replaceAll('\r',' ');	// get these also!
 | 
						|
      //  system.debug( ret); // dump the KML 
 | 
						|
        return ret ;
 | 
						|
	}
 | 
						|
	
 | 
						|
	public static Map<String, String> geo_response = new Map<String, String>{'200'=>'G_GEO_SUCCESS',
 | 
						|
    '400'=>'G_GEO_BAD_REQUEST',
 | 
						|
    '500'=>'G_GEO_SERVER_ERROR',
 | 
						|
    '601'=>'G_GEO_MISSING_ADDRESS',
 | 
						|
    '602'=>'G_GEO_UNKNOWN_ADDRESS',
 | 
						|
    '603'=>'G_GEO_UNAVAILABLE_ADDRESS',
 | 
						|
    '604'=>'G_GEO_UNKNOWN_DIRECTIONS',
 | 
						|
    '610'=>'G_GEO_BAD_KEY',
 | 
						|
    '620'=>'G_GEO_TOO_MANY_QUERIES'
 | 
						|
    };
 | 
						|
        
 | 
						|
	public static string accountAddressString ( account acct ) {
 | 
						|
    	// form an address string given an account object
 | 
						|
    	string adr = acct.billingstreet + ',' + acct.billingcity + ',' + acct.billingstate; 
 | 
						|
        if ( acct.billingpostalcode != null ) adr += ',' + acct.billingpostalcode; 
 | 
						|
        if ( acct.billingcountry != null ) adr += ',' + acct.billingcountry; 
 | 
						|
        adr = adr.replaceAll('\"', '' );
 | 
						|
        adr = adr.replaceAll('\'', '' );
 | 
						|
        adr = adr.replaceAll( '\n', ' ' );    
 | 
						|
        adr = adr.replaceAll( '\r', ' ' );    
 | 
						|
        system.debug( adr );  
 | 
						|
        return adr;	
 | 
						|
    }
 | 
						|
    
 | 
						|
	public static testmethod void t1() { 
 | 
						|
		PageReference pageRef =  Page.kmlPreviewTemplate;
 | 
						|
        Test.setCurrentPage(pageRef);
 | 
						|
        system.assert ( GeoUtils.generateFromContent( pageRef ) != null );
 | 
						|
        Account a =  new Account( name='foo', billingstreet='main', billingcity='springfield',billingstate='il',
 | 
						|
         billingpostalcode='9',billingcountry='us');
 | 
						|
        insert a;
 | 
						|
        system.assertEquals( 'main,springfield,il,9,us',accountAddressString( a) );
 | 
						|
       
 | 
						|
	}
 | 
						|
} |