Search in sources :

Example 31 with Pool

use of org.olat.modules.qpool.Pool in project OpenOLAT by OpenOLAT.

the class ShareItemOptionController method initForm.

@Override
protected void initForm(FormItemContainer formLayout, Controller listener, UserRequest ureq) {
    StringBuilder names = new StringBuilder();
    if (groups != null && !groups.isEmpty()) {
        for (BusinessGroup group : groups) {
            if (names.length() > 0)
                names.append(", ");
            names.append(group.getName());
        }
    }
    if (pools != null && !pools.isEmpty()) {
        for (Pool pool : pools) {
            if (names.length() > 0)
                names.append(", ");
            names.append(pool.getName());
        }
    }
    if (formLayout instanceof FormLayoutContainer) {
        ((FormLayoutContainer) formLayout).contextPut("shares", names.toString());
    }
    FormLayoutContainer mailCont = FormLayoutContainer.createDefaultFormLayout("editable", getTranslator());
    formLayout.add(mailCont);
    String[] values = new String[] { translate("yes"), translate("no") };
    editableEl = uifactory.addRadiosVertical("share.editable", "share.editable", mailCont, keys, values);
    editableEl.select("no", true);
    FormLayoutContainer buttonsCont = FormLayoutContainer.createButtonLayout("buttons", getTranslator());
    buttonsCont.setRootForm(mainForm);
    formLayout.add(buttonsCont);
    uifactory.addFormSubmitButton("ok", "ok", buttonsCont);
    uifactory.addFormCancelButton("cancel", buttonsCont, ureq, getWindowControl());
}
Also used : BusinessGroup(org.olat.group.BusinessGroup) FormLayoutContainer(org.olat.core.gui.components.form.flexible.impl.FormLayoutContainer) Pool(org.olat.modules.qpool.Pool)

Example 32 with Pool

use of org.olat.modules.qpool.Pool in project OpenOLAT by OpenOLAT.

the class PoolDAOTest method removeItemFromPool.

@Test
public void removeItemFromPool() {
    // create a pool
    String poolName = "NGC-" + UUID.randomUUID().toString();
    Pool pool = poolDao.createPool(null, poolName, true);
    Assert.assertNotNull(pool);
    QItemType mcType = qItemTypeDao.loadByType(QuestionType.MC.name());
    QuestionItem item = questionItemDao.createAndPersist(null, "Galaxy", QTIConstants.QTI_12_FORMAT, Locale.ENGLISH.getLanguage(), null, null, null, mcType);
    Assert.assertNotNull(item);
    dbInstance.commitAndCloseSession();
    // get pools
    poolDao.addItemToPool(item, Collections.singletonList(pool), false);
    dbInstance.commit();
    SearchQuestionItemParams params = new SearchQuestionItemParams(null, null);
    params.setPoolKey(pool.getKey());
    // check
    int numOfItems = poolDao.countItemsInPool(params);
    Assert.assertEquals(1, numOfItems);
    // remove
    poolDao.removeFromPool(Collections.<QuestionItemShort>singletonList(item), pool);
    dbInstance.commit();
    // check empty pool
    int numOfStayingItems = poolDao.countItemsInPool(params);
    Assert.assertEquals(0, numOfStayingItems);
    // but item exists
    QuestionItem reloadedItem = questionItemDao.loadById(item.getKey());
    Assert.assertNotNull(reloadedItem);
}
Also used : QuestionItem2Pool(org.olat.modules.qpool.QuestionItem2Pool) Pool(org.olat.modules.qpool.Pool) SearchQuestionItemParams(org.olat.modules.qpool.model.SearchQuestionItemParams) QuestionItem(org.olat.modules.qpool.QuestionItem) QItemType(org.olat.modules.qpool.model.QItemType) Test(org.junit.Test)

Example 33 with Pool

use of org.olat.modules.qpool.Pool in project OpenOLAT by OpenOLAT.

the class PoolDAOTest method createPool_withOwner.

@Test
public void createPool_withOwner() {
    Identity id = JunitTestHelper.createAndPersistIdentityAsUser("Pool-owner-" + UUID.randomUUID().toString());
    Pool pool = poolDao.createPool(id, "NGC owned", true);
    Assert.assertNotNull(pool);
    dbInstance.commitAndCloseSession();
}
Also used : QuestionItem2Pool(org.olat.modules.qpool.QuestionItem2Pool) Pool(org.olat.modules.qpool.Pool) Identity(org.olat.core.id.Identity) Test(org.junit.Test)

Example 34 with Pool

use of org.olat.modules.qpool.Pool in project OpenOLAT by OpenOLAT.

the class PoolDAOTest method getPoolInfos_byItem.

@Test
public void getPoolInfos_byItem() {
    // create a pool
    String poolName = "NGC-" + UUID.randomUUID().toString();
    Pool pool1 = poolDao.createPool(null, poolName, true);
    Pool pool2 = poolDao.createPool(null, poolName, true);
    QItemType mcType = qItemTypeDao.loadByType(QuestionType.MC.name());
    QuestionItem item = questionItemDao.createAndPersist(null, "Galaxy", QTIConstants.QTI_12_FORMAT, Locale.ENGLISH.getLanguage(), null, null, null, mcType);
    List<Pool> pools = new ArrayList<Pool>(2);
    pools.add(pool1);
    pools.add(pool2);
    poolDao.addItemToPool(item, pools, false);
    dbInstance.commitAndCloseSession();
    // retrieve
    List<QuestionItem2Pool> infos = poolDao.getQuestionItem2Pool(item);
    Assert.assertNotNull(infos);
    Assert.assertEquals(2, infos.size());
}
Also used : ArrayList(java.util.ArrayList) QuestionItem2Pool(org.olat.modules.qpool.QuestionItem2Pool) Pool(org.olat.modules.qpool.Pool) QuestionItem(org.olat.modules.qpool.QuestionItem) QuestionItem2Pool(org.olat.modules.qpool.QuestionItem2Pool) QItemType(org.olat.modules.qpool.model.QItemType) Test(org.junit.Test)

Example 35 with Pool

use of org.olat.modules.qpool.Pool in project OpenOLAT by OpenOLAT.

the class PoolDAOTest method createPool.

@Test
public void createPool() {
    Pool pool = poolDao.createPool(null, "NGC", false);
    Assert.assertNotNull(pool);
    Assert.assertNotNull(pool.getKey());
    Assert.assertNotNull(pool.getCreationDate());
    Assert.assertEquals("NGC", pool.getName());
    Assert.assertFalse(pool.isPublicPool());
    dbInstance.commitAndCloseSession();
}
Also used : QuestionItem2Pool(org.olat.modules.qpool.QuestionItem2Pool) Pool(org.olat.modules.qpool.Pool) Test(org.junit.Test)

Aggregations

Pool (org.olat.modules.qpool.Pool)52 QuestionItem2Pool (org.olat.modules.qpool.QuestionItem2Pool)32 Test (org.junit.Test)30 Identity (org.olat.core.id.Identity)22 QuestionItem (org.olat.modules.qpool.QuestionItem)20 QItemType (org.olat.modules.qpool.model.QItemType)12 SearchQuestionItemParams (org.olat.modules.qpool.model.SearchQuestionItemParams)12 QuestionItemView (org.olat.modules.qpool.QuestionItemView)10 BusinessGroup (org.olat.group.BusinessGroup)8 ArrayList (java.util.ArrayList)6 List (java.util.List)4 SelectionEvent (org.olat.core.gui.components.form.flexible.impl.elements.table.SelectionEvent)4 TreeNode (org.olat.core.gui.components.tree.TreeNode)4 QuestionItemShort (org.olat.modules.qpool.QuestionItemShort)4 PoolItemsSource (org.olat.modules.qpool.ui.datasource.PoolItemsSource)4 Date (java.util.Date)2 Set (java.util.Set)2 StringTokenizer (java.util.StringTokenizer)2 Document (org.apache.lucene.document.Document)2 StringField (org.apache.lucene.document.StringField)2