X-Git-Url: http://git.freeside.biz/gitweb/?p=freeside.git;a=blobdiff_plain;f=eg%2Ftable_template-svc.pm;h=47dcbe6e47ef2b5235c7cc40a2709ca913722366;hp=7f7ef4b6879f2299b73f3fda0c9335f414c05371;hb=633c48448d9468690b7ad77eb6ff7c660a286658;hpb=6cb5c702b17b98be46adea4539e15d5f312e5be1 diff --git a/eg/table_template-svc.pm b/eg/table_template-svc.pm index 7f7ef4b68..47dcbe6e4 100644 --- a/eg/table_template-svc.pm +++ b/eg/table_template-svc.pm @@ -59,6 +59,60 @@ points to. You can ask the object for a copy with the I method. sub table { 'table_name'; } +sub table_info { + { + 'name' => 'Example', + 'name_plural' => 'Example services', #optional, + 'longname_plural' => 'Example services', #optional + 'sorts' => 'svcnum', # optional sort field (or arrayref of sort fields, main first) + 'display_weight' => 100, + 'cancel_weight' => 100, + 'fields' => { + 'field' => 'Description', + 'another_field' => { + 'label' => 'Description', + 'def_label' => 'Description for service definitions', + 'type' => 'text', + 'disable_default' => 1, #disable switches + 'disable_fixed' => 1, # + 'disable_inventory' => 1, # + }, + 'foreign_key' => { + 'label' => 'Description', + 'def_label' => 'Description for service defs', + 'type' => 'select', + 'select_table' => 'foreign_table', + 'select_key' => 'key_field_in_table', + 'select_label' => 'label_field_in_table', + }, + + }, + }; +} + +=item search_sql STRING + +Class method which returns an SQL fragment to search for the given string. + +=cut + +#or something more complicated if necessary +sub search_sql { + my($class, $string) = @_; + $class->search_sql_field('search_field', $string); +} + +=item label + +Returns a meaningful identifier for this example + +=cut + +sub label { + my $self = shift; + $self->label_field; #or something more complicated if necessary +} + =item insert Adds this record to the database. If there is an error, returns the error,