New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Beim kopieren werden Einträge nicht umbenannt #109
Comments
Besser waere es beim duplicate in die edit maske zu wechseln, denn wie will man definieren welche properties nun suffixed werden sollen. Zumal das bei selects usw. nicht einmal moeglich ist. |
könnte man nicht wie bei Contao-Core ein "(Kopie)" hinten ansetzen - wer das nicht möchte, könnte das "DCA-Konform" auch abschalten |
aktuell (DCG-b34) gibt eine Fehlermeldung beim Duplizieren von Render-Einstellungen oder Eingabemasken
ein Ansatzpunkt für das Hinzufügen des "(Kopie)" wäre z.B. in https://github.com/contao-community-alliance/dc-general/blob/master/src/ContaoCommunityAlliance/DcGeneral/Controller/DefaultController.php#L462-L489 private function handleClonedModelProperty(
ModelInterface $model,
PropertyInterface $property,
DataProviderInterface $dataProvider
) {
$extra = $property->getExtra();
$propName = $property->getName();
// Check doNotCopy.
if (isset($extra['doNotCopy']) && $extra['doNotCopy'] === true) {
$model->setProperty($propName, null);
return;
}
// Check fallback.
if (isset($extra['fallback']) && $extra['fallback'] === true) {
$dataProvider->resetFallback($propName);
}
// Check uniqueness.
if (isset($extra['unique'])
&& $extra['unique'] === true
&& !$dataProvider->isUniqueValue($propName, $model->getProperty($propName))
) {
// Implicit "do not copy" unique values, they cannot be unique anymore.
$model->setProperty($propName, null);
}
+ // Add '(Copy)' to property 'name'.
+ if ($propName == 'name') {
+ $model->setProperty($propName, sprintf($GLOBALS['TL_LANG']['MSC']['copyOf'], $model->getProperty($propName)));
+ }
} Test: wobei hier eine "feste Verdrahtung" zu 'name' wäre - lt. @baumannsven hat @discordier eine flexiblere Lösung im Blick... |
Das selbe Problem besteht auch bei ModelItems (In deinem Fall wären das dann wohl "Mitarbeiter"). |
Dieser hotfix müsste das Problem lösen. |
Hier würde ich vorschlagen das property dem der Kopierhinweis angehängt werden soll im config zu konfigurieren. $GLOBALS['TL_DCA']['thisTable']['config']['copyProperty'] = 'title'; @discordier , @stefanheimes Was meint ihr dazu? |
Kein Fan davon...
Das sollte man nochmal genauer yberdenken. |
Wenn ich dich richtig verstanden, meinst du im Field config. |
Ja, theoretisch ist das moeglich, aber dann nicht aus dem Code heraus auf das DCA zugreifen sondern einen neuen Getter an die PropertyDefinition anbauen. |
Diesen Gedanken hatte ich auch. Dann werde ich mich darum kümmern, wenn ich mit dem finalen Deep Copy fertig bin. |
@baumannsven kommt das nach dem edit/overrideAll "auf den Tisch" ;-) |
@zonky2 Ja das kommt dann mit dem final deep copy |
o.k. - dann verbinde ich das mal mit #191 |
DCG 2.3: das ist der Fall auch bei MM-Items wie Mitarbeiter |
In meinem Fall bei Metamodels.
Ich dupliziere ein Rendersetting.
Danach sieht das so aus:
ich weiß nun nicht welches das schon verwendete ist, und welches das neue.
(Außer ich schaue mir die ID an)
Mein Vorschlag ist, wie bei Contao den Namen auf _1 _2 etc. zu setzen.
The text was updated successfully, but these errors were encountered: