Difference between revisions of "Freeside:3:Documentation:Developer/FS/UI/Web"

From Freeside
Jump to: navigation, search
m (Edit via perl MediaWiki framework (1.13))
m (Edit via perl MediaWiki framework (1.13))
 
(2 intermediate revisions by the same user not shown)
Line 14: Line 14:
  
 
:*** query OR svc is required
 
:*** query OR svc is required
; cust_header [ CUST_FIELDS_VALUE ]
+
:; cust_header [ CUST_FIELDS_VALUE ]
:Returns an array of customer information headers according to the supplied customer fields value, or if no value is supplied, the '''cust-fields''' configuration value.
+
::Returns an array of customer information headers according to the supplied customer fields value, or if no value is supplied, the '''cust-fields''' configuration value.
; cust_sql_fields [ CUST_FIELDS_VALUE ]
+
:; cust_sql_fields [ CUST_FIELDS_VALUE ]
:Returns a list of fields for the SELECT portion of an SQL query.
+
::Returns a list of fields for the SELECT portion of an SQL query.
  
:As with [[#cust_header|the cust_header subroutine]], the fields returned are defined by the supplied customer fields setting, or if no customer fields setting is supplied, the <B>cust-fields</B> configuration value.
+
::As with [[#cust_header|the cust_header subroutine]], the fields returned are defined by the supplied customer fields setting, or if no customer fields setting is supplied, the <B>cust-fields</B> configuration value.
; join_cust_main [ TABLE[.CUSTNUM] ] [ LOCATION_TABLE[.LOCATIONNUM] ]
+
:; join_cust_main [ TABLE[.CUSTNUM] ] [ LOCATION_TABLE[.LOCATIONNUM] ]
:Returns an SQL join phrase for the FROM clause so that the fields listed in [[Freeside:3:Documentation:Developer/cust sql fields|cust_sql_fields]] will be available. Currently joins to cust_main itself, as well as cust_location (under the aliases 'bill_location' and 'ship_location') if address fields are needed. [[Freeside:3:Documentation:Developer/cust header()|cust_header()]] should have been called already.
+
::Returns an SQL join phrase for the FROM clause so that the fields listed in [[Freeside:3:Documentation:Developer/cust sql fields|cust_sql_fields]] will be available. Currently joins to cust_main itself, as well as cust_location (under the aliases 'bill_location' and 'ship_location') if address fields are needed. [[Freeside:3:Documentation:Developer/cust header()|cust_header()]] should have been called already.
  
:All of these will be left joins; if you want to exclude rows with no linked cust_main record (or bill_location/ship_location), you can do so in the WHERE clause.
+
::All of these will be left joins; if you want to exclude rows with no linked cust_main record (or bill_location/ship_location), you can do so in the WHERE clause.
  
:TABLE is the table containing the custnum field. If CUSTNUM (a field name in that table) is specified, that field will be joined to cust_main.custnum. Otherwise, this function will assume the field is named "custnum". If the argument isn't present at all, the join will just say "USING (custnum)", which might work.
+
::TABLE is the table containing the custnum field. If CUSTNUM (a field name in that table) is specified, that field will be joined to cust_main.custnum. Otherwise, this function will assume the field is named "custnum". If the argument isn't present at all, the join will just say "USING (custnum)", which might work.
  
:As a special case, if TABLE is 'cust_main', only the joins to cust_location will be returned.
+
::As a special case, if TABLE is 'cust_main', only the joins to cust_location will be returned.
  
:LOCATION_TABLE is an optional table name to use for joining ship_location, in case your query also includes package information and you want the "service address" columns to reflect package addresses.
+
::LOCATION_TABLE is an optional table name to use for joining ship_location, in case your query also includes package information and you want the "service address" columns to reflect package addresses.
; cust_fields OBJECT [ CUST_FIELDS_VALUE ]
+
:; cust_fields OBJECT [ CUST_FIELDS_VALUE ]
:Given an object that contains fields from cust_main (say, from a JOINed search. See httemplate/search/svc_* for examples), returns an array of customer information, or "(unlinked)" if this service is not linked to a customer.
+
::Given an object that contains fields from cust_main (say, from a JOINed search. See httemplate/search/svc_* for examples), returns an array of customer information, or "(unlinked)" if this service is not linked to a customer.
  
:As with [[#cust_header|the cust_header subroutine]], the fields returned are defined by the supplied customer fields setting, or if no customer fields setting is supplied, the <B>cust-fields</B> configuration value.
+
::As with [[#cust_header|the cust_header subroutine]], the fields returned are defined by the supplied customer fields setting, or if no customer fields setting is supplied, the <B>cust-fields</B> configuration value.
; cust_fields_subs
+
:; cust_fields_subs
:Returns an array of subroutine references for returning customer field values. This is similar to cust_fields, but returns each field's sub as a distinct element.
+
::Returns an array of subroutine references for returning customer field values. This is similar to cust_fields, but returns each field's sub as a distinct element.
; cust_colors
+
:; cust_colors
:Returns an array of subroutine references (or empty strings) for returning customer information colors.
+
::Returns an array of subroutine references (or empty strings) for returning customer information colors.
  
:As with [[#cust_header|the cust_header subroutine]], the fields returned are defined by the supplied customer fields setting, or if no customer fields setting is supplied, the <B>cust-fields</B> configuration value.
+
::As with [[#cust_header|the cust_header subroutine]], the fields returned are defined by the supplied customer fields setting, or if no customer fields setting is supplied, the <B>cust-fields</B> configuration value.
; cust_styles
+
:; cust_styles
:Returns an array of customer information styles.
+
::Returns an array of customer information styles.
  
:As with [[#cust_header|the cust_header subroutine]], the fields returned are defined by the supplied customer fields setting, or if no customer fields setting is supplied, the <B>cust-fields</B> configuration value.
+
::As with [[#cust_header|the cust_header subroutine]], the fields returned are defined by the supplied customer fields setting, or if no customer fields setting is supplied, the <B>cust-fields</B> configuration value.
; cust_aligns
+
:; cust_aligns
:Returns an array or scalar (depending on context) of customer information alignments.
+
::Returns an array or scalar (depending on context) of customer information alignments.
  
:As with [[#cust_header|the cust_header subroutine]], the fields returned are defined by the supplied customer fields setting, or if no customer fields setting is supplied, the <B>cust-fields</B> configuration value.
+
::As with [[#cust_header|the cust_header subroutine]], the fields returned are defined by the supplied customer fields setting, or if no customer fields setting is supplied, the <B>cust-fields</B> configuration value.
; is_mobile
+
:; cust_links
:Utility function to determine if the client is a mobile browser.
+
::Returns an array of links to view/cust_main.cgi, for use with cust_fields.
 +
:; is_mobile
 +
::Utility function to determine if the client is a mobile browser.
 +
:; random_id [ DIGITS ]
 +
::Returns a random number of length DIGITS, or if unspecified, a long random identifier consisting of the timestamp, process ID, and a random number. Anything in the UI that needs a random identifier should use this.
  
 
==POD ERRORS==
 
==POD ERRORS==
 
Hey! '''The above document had some coding errors, which are explained below:'''
 
Hey! '''The above document had some coding errors, which are explained below:'''
  
; Around line 50&#58;
+
; Around line 52&#58;
 
:'=item' outside of any '=over'
 
:'=item' outside of any '=over'
; Around line 62&#58;
 
:Expected '=item *'
 
 
; Around line 64&#58;
 
; Around line 64&#58;
 
:Expected '=item *'
 
:Expected '=item *'
Line 65: Line 67:
 
:Expected '=item *'
 
:Expected '=item *'
 
; Around line 70&#58;
 
; Around line 70&#58;
 +
:Expected '=item *'
 +
; Around line 72&#58;
 
:Expected '=item *'
 
:Expected '=item *'

Latest revision as of 06:33, 28 September 2015

svc_url
Returns a service URL, first checking to see if there is a service-specific page to link to, otherwise to a generic service handling page. Options are passed as a list of name-value pairs, and include:
    • m - Mason request object ($m)
    • action - The action for which to construct "edit", "view", or "search"
    • ** part_svc - Service definition (see FS::part_svc)
    • ** svcdb - Service table
    • *** query - Query string
    • *** svc - FS::cust_svc or FS::svc_* object
    • ahref - Optional flag, if set true returns <A HREF="$url"> instead of just the URL.
  • Required fields
    • part_svc OR svcdb is required
      • query OR svc is required
cust_header [ CUST_FIELDS_VALUE ]
Returns an array of customer information headers according to the supplied customer fields value, or if no value is supplied, the cust-fields configuration value.
cust_sql_fields [ CUST_FIELDS_VALUE ]
Returns a list of fields for the SELECT portion of an SQL query.
As with the cust_header subroutine, the fields returned are defined by the supplied customer fields setting, or if no customer fields setting is supplied, the cust-fields configuration value.
join_cust_main [ TABLE[.CUSTNUM] ] [ LOCATION_TABLE[.LOCATIONNUM] ]
Returns an SQL join phrase for the FROM clause so that the fields listed in cust_sql_fields will be available. Currently joins to cust_main itself, as well as cust_location (under the aliases 'bill_location' and 'ship_location') if address fields are needed. cust_header() should have been called already.
All of these will be left joins; if you want to exclude rows with no linked cust_main record (or bill_location/ship_location), you can do so in the WHERE clause.
TABLE is the table containing the custnum field. If CUSTNUM (a field name in that table) is specified, that field will be joined to cust_main.custnum. Otherwise, this function will assume the field is named "custnum". If the argument isn't present at all, the join will just say "USING (custnum)", which might work.
As a special case, if TABLE is 'cust_main', only the joins to cust_location will be returned.
LOCATION_TABLE is an optional table name to use for joining ship_location, in case your query also includes package information and you want the "service address" columns to reflect package addresses.
cust_fields OBJECT [ CUST_FIELDS_VALUE ]
Given an object that contains fields from cust_main (say, from a JOINed search. See httemplate/search/svc_* for examples), returns an array of customer information, or "(unlinked)" if this service is not linked to a customer.
As with the cust_header subroutine, the fields returned are defined by the supplied customer fields setting, or if no customer fields setting is supplied, the cust-fields configuration value.
cust_fields_subs
Returns an array of subroutine references for returning customer field values. This is similar to cust_fields, but returns each field's sub as a distinct element.
cust_colors
Returns an array of subroutine references (or empty strings) for returning customer information colors.
As with the cust_header subroutine, the fields returned are defined by the supplied customer fields setting, or if no customer fields setting is supplied, the cust-fields configuration value.
cust_styles
Returns an array of customer information styles.
As with the cust_header subroutine, the fields returned are defined by the supplied customer fields setting, or if no customer fields setting is supplied, the cust-fields configuration value.
cust_aligns
Returns an array or scalar (depending on context) of customer information alignments.
As with the cust_header subroutine, the fields returned are defined by the supplied customer fields setting, or if no customer fields setting is supplied, the cust-fields configuration value.
cust_links
Returns an array of links to view/cust_main.cgi, for use with cust_fields.
is_mobile
Utility function to determine if the client is a mobile browser.
random_id [ DIGITS ]
Returns a random number of length DIGITS, or if unspecified, a long random identifier consisting of the timestamp, process ID, and a random number. Anything in the UI that needs a random identifier should use this.

POD ERRORS

Hey! The above document had some coding errors, which are explained below:

Around line 52:
'=item' outside of any '=over'
Around line 64:
Expected '=item *'
Around line 66:
Expected '=item *'
Around line 68:
Expected '=item *'
Around line 70:
Expected '=item *'
Around line 72:
Expected '=item *'