function AddForm($childID = null)
	{
		$form = parent::AddForm($childID);
		$actions = new FieldSet();	
		$titles = array();
		if($files = $form->getFileFields()) {
			foreach($files as $field)	$titles[] = DOMUtil::readable_class($field->Title());
		}
		if($doms = $form->getNestedDOMs())
			foreach($doms as $field) $titles[] = $field->PluralTitle(); 
    if(empty($titles))
      $text = _t('DataObjectManager.SAVE','Save');
    elseif(sizeof($titles) > 3) {
      $first_three = array_slice($titles,0,3);
      $remaining = sizeof(array_slice($titles, 4));
      $text = sprintf(_t('DataObjectManager.SAVEANDADD','Save and add %s'), implode(', ',$first_three));
      $text .= ", " . sprintf(_t('DataObjectManager.ANDOTHERCOMPONENTS','and %d other components'),$remaining);
    }
    else
      $text = sprintf(_t('DataObjectManager.SAVEANDADD','Save and add %s'), DOMUtil::readable_list($titles));

		$actions->push(
			$saveAction = new FormAction("saveComplexTableField", $text)
		);	
		$saveAction->addExtraClass('save');
		$form->setActions($actions);
		$form->Fields()->insertFirst(new LiteralField('open','<div id="field-holder"><div id="fade"></div>'));
		$o = $form->Fields()->Last();
		$form->Fields()->insertAfter(new LiteralField('close','</div>'),$o->Name());

		return $form;
	}	
Esempio n. 2
0
 function AddForm($childID = null)
 {
     $form = parent::AddForm($childID);
     $actions = new FieldSet();
     $titles = array();
     if ($files = $form->getFileFields()) {
         foreach ($files as $field) {
             $titles[] = DOMUtil::readable_class($field->Title());
         }
     }
     if ($doms = $form->getNestedDOMs()) {
         foreach ($doms as $field) {
             $titles[] = $field->PluralTitle();
         }
     }
     $text = empty($titles) ? _t('DataObjectManager.SAVE', 'Save') : sprintf(_t('DataObjectManager.SAVEANDADD', 'Save and add %s'), DOMUtil::readable_list($titles));
     $actions->push($saveAction = new FormAction("saveComplexTableField", $text));
     $saveAction->addExtraClass('save');
     $form->setActions($actions);
     return $form;
 }