function constructDDWebToLeadFields($fields, $classname)
{
    require_once "include/templates/TemplateDragDropChooser.php";
    global $mod_strings;
    $d2 = array();
    //now call function that creates javascript for invoking DDChooser object
    $dd_chooser = new TemplateDragDropChooser();
    $dd_chooser->args['classname'] = $classname;
    $dd_chooser->args['left_header'] = $mod_strings['LBL_AVALAIBLE_FIELDS_HEADER'];
    $dd_chooser->args['mid_header'] = $mod_strings['LBL_LEAD_FORM_FIRST_HEADER'];
    $dd_chooser->args['right_header'] = $mod_strings['LBL_LEAD_FORM_SECOND_HEADER'];
    $dd_chooser->args['left_data'] = $fields;
    $dd_chooser->args['mid_data'] = $d2;
    $dd_chooser->args['right_data'] = $d2;
    $dd_chooser->args['title'] = ' ';
    $dd_chooser->args['left_div_name'] = 'ddgrid2';
    $dd_chooser->args['mid_div_name'] = 'ddgrid3';
    $dd_chooser->args['right_div_name'] = 'ddgrid4';
    $dd_chooser->args['gridcount'] = 'three';
    $str = $dd_chooser->displayScriptTags();
    $str .= $dd_chooser->displayDefinitionScript();
    $str .= $dd_chooser->display();
    $str .= "<script>\n\t           //function post rows\n\t           function postMoveRows(){\n\t\t\t    \t//Call other function when this is called\n\t           }\n\t        </script>";
    $str .= "<script>\n\t\t       function displayAddRemoveDragButtons(Add_All_Fields,Remove_All_Fields){\n\t\t\t\t    var addRemove = document.getElementById('lead_add_remove_button');\n\t\t\t\t    if(" . $dd_chooser->args['classname'] . "_grid0.getDataModel().getTotalRowCount() ==0) {\n\t\t\t\t     addRemove.setAttribute('value',Remove_All_Fields);\n\t\t\t\t     addRemove.setAttribute('title',Remove_All_Fields);\n\t\t\t\t    }\n\t\t\t\t    else if(" . $dd_chooser->args['classname'] . "_grid1.getDataModel().getTotalRowCount() ==0 && " . $dd_chooser->args['classname'] . "_grid2.getDataModel().getTotalRowCount() ==0){\n\t\t\t\t     addRemove.setAttribute('value',Add_All_Fields);\n\t\t\t\t     addRemove.setAttribute('title',Add_All_Fields);\n\t\t\t\t    }\n              }\n            </script>";
    return $str;
}
function constructDDSubscriptionList($focus, $classname)
{
    require_once "include/templates/TemplateDragDropChooser.php";
    global $mod_strings;
    $unsubs_arr = '';
    $subs_arr = '';
    // Lets start by creating the subscription and unsubscription arrays
    $subscription_arrays = get_subscription_lists($focus);
    $unsubs_arr = $subscription_arrays['unsubscribed'];
    $subs_arr = $subscription_arrays['subscribed'];
    $unsubs_arr_rev = array();
    $subs_arr_rev = array();
    foreach ($unsubs_arr as $key => $val) {
        $temp = array();
        $temp[] = $key;
        $temp[] = $val;
        $unsubs_arr_rev[] = $temp;
    }
    foreach ($subs_arr as $key => $val) {
        $temp = array();
        $temp[] = $key;
        $temp[] = $val;
        $subs_arr_rev[] = $temp;
    }
    //now call function that creates javascript for invoking DDChooser object
    $dd_chooser = new TemplateDragDropChooser();
    $dd_chooser->args['classname'] = $classname;
    $dd_chooser->args['left_header'] = $mod_strings['LBL_ALREADY_SUBSCRIBED_HEADER'];
    $dd_chooser->args['right_header'] = $mod_strings['LBL_UNSUBSCRIBED_HEADER'];
    $dd_chooser->args['left_data'] = $subs_arr_rev;
    $dd_chooser->args['right_data'] = $unsubs_arr_rev;
    $dd_chooser->args['title'] = ' ';
    $dd_chooser->args['left_div_name'] = 'ddgrid0';
    $dd_chooser->args['right_div_name'] = 'ddgrid1';
    $dd_chooser->args['gridcount'] = 'two';
    $str = $dd_chooser->displayScriptTags();
    $str .= $dd_chooser->displayDefinitionScript();
    $str .= $dd_chooser->display();
    return $str;
}