[
{
    blockid=plugin;
    help=service_smtp_plugin_plugin;
    custom=com.netscape.management.msgserv.StorePluginControl;
    localvar={
	    .headers="Entry";
	    .headers.text="Path";
	    .headers="Options";
    },
    content=[
	{
	    ctrl=label;
	    text="Plug-in Configuration";
	    font=["","",16];
	    wrap=$g.label.size5;
	},
	{
	    ctrl=vstrut;
	},
	{
	    ctrl=separator;
	},
	{
	    ctrl=vstrut;
	},
	{
	    ctrl=pane;
	},
	{
	    ctrl=vstrut;
	},
	{
	    ctrl=table;
	    id=pluginTable;
	    label=adminlabel;
	    showedit=true;
	    buttonsat=east;
	    delimiter=" ";
	    columns=$.headers;
	    columns=[
		{
		    header="Active";
		    editor=boolean;
		    renderer=boolean;
		    width=60;
		},
		{
		    header="Path";
		    width=300;
		}
	    ]
	}
    ]
},
{
    blockid=addDialog;
    help=service_smtp_plugin_addDialog;
    localvar={
	    .entry.text="Entry:";
	    .path.text="Path:";
	    .path.hint="Path:";
	    .funcs.text="Functions:";
	    .funcs.hint="Functions:";
	    .init.text="Init:";
	    .init.hint="Init:";
	    .option.text="Options:";
	    .entry.labels=[PostSmtpAccept,PreSmtpDeliver];
	    .title.edit="Plug-in Entry";
	    .title.add="Plug-in Entry";
    },
    content=[
	{
	    ctrl=pane;
	    content=[
		{
		    ctrl=label;
		    aligny=0.5;
		    id=entrylabel;
		    text=$.entry.text;
		    wrap=$g.label.size0;
		},
		{
		    ctrl=rigid;
		},
		{
		    ctrl=choice;
		    aligny=0.5;
		    id=entryoption;
		    labels=$.entry.labels;
		    items=$.entry.labels;
		    val=$entry;
		    label=entrychoice;
		},
		{
		    ctrl=hglue;
		}
	    ]
	},
	{
	    ctrl=vstrut;
	},
	{
	    ctrl=pane;
	    content=[
		{
		    ctrl=label;
		    aligny=0.5;
		    id=pathlabel;
		    text=$.path.text;
		    wrap=$g.label.size0;
		},
		{
		    ctrl=rigid;
		},
		{
		    ctrl=text;
		    aligny=0.5;
		    val=$path;
		    label=pathlabel;
		    focus = true;
            validate=[com.netscape.management.msgserv.util.ValidAbsolutePath,false];
            errhint=$.path.hint;
		}
	    ]
	},
	{
	    ctrl=vstrut;
	},
	{
	    ctrl=pane;
	    content=[
		{
		    ctrl=label;
		    aligny=0.5;
		    id=funcslabel;
		    text=$.funcs.text;
		    wrap=$g.label.size0;
		},
		{
		    ctrl=rigid;
		},
		{
		    ctrl=text;
		    aligny=0.5;
		    val=$funcs;
		    label=funcslabel;
            validate=com.netscape.management.msgserv.util.NonemptyString;
            errhint=$.funcs.hint;
		}
	    ]
	},
	{
	    ctrl=vstrut;
	},
	{
	    ctrl=pane;
	    content=[
		{
		    ctrl=label;
		    aligny=0.5;
		    id=initlabel;
		    text=$.init.text;
		    wrap=$g.label.size0;
		},
		{
		    ctrl=rigid;
		},
		{
		    ctrl=text;
		    aligny=0.5;
		    val=$init;
		    label=initlabel;
            validate=com.netscape.management.msgserv.util.NonemptyString;
            errhint=$.init.hint;
		}
	    ]
	},
	{
	    ctrl=vstrut;
	},
	{
        ctrl=pane;
        content=[
	    {
		    ctrl=label;
		    aligny=0.5;
		    id=optionlabel;
		    text=$.option.text;
            wrap=$g.label.size0;
	    },
	    {
		    ctrl=rigid;
	    },
	    {
		    ctrl=text;
		    aligny=0.5;
		    val=$option;
		    label=optionlabel;
	    }
	    ]
    },
  	{
 	    ctrl=label;
   	    wrap=$g.label.size4;
   	}
    ]
}
]
