libreccm-legacy/ccm-ldn-userpreferences/pdl/com/arsdigita/london/userprefs/UserPrefs.pdl

38 lines
1.2 KiB
Plaintext
Executable File

//
//This library is free software; you can redistribute it and/or
//modify it under the terms of the GNU Lesser General Public License
//as published by the Free Software Foundation; either version 2.1 of
//the License, or (at your option) any later version.
//
//This library is distributed in the hope that it will be useful,
//but WITHOUT ANY WARRANTY; without even the implied warranty of
//MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
//Lesser General Public License for more details.
//
//You should have received a copy of the GNU Lesser General Public
//License along with this library; if not, write to the Free Software
//Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
model com.arsdigita.london.userprefs;
import com.arsdigita.kernel.User;
object type PersistentUserPrefs {
BigDecimal[1..1] id = user_prefs.id;
unique User[0..1] user = join user_prefs.user_id to users.user_id;
unique Long[0..1] cookie = user_prefs.cookie;
component Pref[0..n] prefs = join user_prefs.id to user_pref.prefs_id;
object key ( id );
}
object type Pref {
BigDecimal[1..1] id = user_pref.id;
String[1..1] key = user_pref.key;
String[0..1] value = user_pref.value;
object key ( id );
}