- Timestamp:
- 9 Jan 2010, 11:24:31 (15 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
waeup/branches/ulif-layout/src/waeup/browser.txt
r4719 r4759 399 399 >>> browser.open('http://localhost/myuniversity/faculties/TF/TD') 400 400 >>> 'My renamed course' in browser.contents 401 False 402 403 404 Certificates 405 ============ 406 407 Once we have a department, we can add also certificats. 408 409 Adding certificates 410 ------------------- 411 412 Certificates are stored in :class:`ICertificateContainer` instances 413 with their code as key. CertificateContainers are normally availabe as 414 `certificates` attribute of 415 :class:`waeup.university.department.Department` instances. 416 417 To ease the life of users we do not require to browse the 418 certificatecontainers (which have in fact no user interface), but 419 provide adding of certificates in department views. 420 421 Each department provides a ``Add certificate`` action button near top. 422 423 Departments provide an add-form to add new certificates: 424 425 >>> dept_url = 'http://localhost/myuniversity/faculties/TF/TD' 426 >>> browser.open(dept_url + '/addcertificate') 427 >>> print browser.contents 428 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"... 429 ...<span class="required">*</span><span>title</span> 430 ... 431 432 We fill in a name for our new cert: 433 434 >>> ctrl = browser.getControl(name='form.title') 435 >>> ctrl.value = 'My Certificate 1' 436 437 Furthermore we add a code (kind of abbreviation): 438 439 >>> browser.getControl(name='form.code').value = 'CERT1' 440 441 Set the remaining required fields: 442 443 >>> browser.getControl(name='form.category').value = 'UME' 444 >>> browser.getControl(name='form.study_mode').value = 'combined' 445 >>> browser.getControl(name='form.start_level').value = '100' 446 >>> browser.getControl(name='form.end_level').value = '400' 447 >>> browser.getControl(name='form.application_category').value = 'UME' 448 >>> browser.getControl(name='form.m_prefix').value = 'something' 449 >>> browser.getControl(name='form.max_pass').value = '400' 450 451 Finally, we create the certificate: 452 453 >>> browser.getControl('Add certificate').click() 454 455 If we try to register a certificate under the same code twice we will 456 get an error: 457 458 >>> browser.open(dept_url + '/addcertificate') 459 >>> ctrl = browser.getControl(name='form.title') 460 >>> ctrl.value = 'Another cert with same code' 461 >>> browser.getControl(name='form.code').value = 'CERT1' 462 >>> browser.getControl(name='form.category').value = 'UME' 463 >>> browser.getControl(name='form.study_mode').value = 'combined' 464 >>> browser.getControl(name='form.start_level').value = '100' 465 >>> browser.getControl(name='form.end_level').value = '400' 466 >>> browser.getControl(name='form.application_category').value = 'UME' 467 >>> browser.getControl(name='form.m_prefix').value = 'something' 468 >>> browser.getControl(name='form.max_pass').value = '400' 469 470 >>> browser.getControl('Add certificate').click() 471 >>> print browser.contents 472 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"... 473 ...<div>The name chosen already exists in the database</div> 474 ... 475 476 Our certificate will be linked under the code on the department page: 477 478 >>> browser.open(dept_url) 479 >>> browser.getLink('CERT1').click() 480 >>> browser.url 481 'http://localhost/myuniversity/faculties/TF/TD/certificates/CERT1' 482 483 Before we really add a certificate we can cancel the action and will be 484 redirected to the department page: 485 486 >>> browser.open(dept_url + '/addcertificate') 487 >>> browser.getControl('Cancel').click() 488 >>> browser.url 489 'http://localhost/myuniversity/faculties/TF/TD' 490 491 492 Modifying certificates 493 ---------------------- 494 495 We can change the settings for a cert by clicking on the provided 496 'Edit settings' link: 497 498 >>> browser.open(dept_url + '/certificates/CERT1') 499 >>> browser.getLink('Edit settings').click() 500 501 When modifying a certificate, we cannot change the code any more: 502 503 >>> browser.getControl(name='form.code') 504 Traceback (most recent call last): 505 ... 506 LookupError: name 'form.code' 507 508 Let's set a new title and save the form: 509 510 >>> browser.getControl(name='form.title').value = "My test cert" 511 >>> browser.getControl(name='form.actions.save').click() 512 513 Clicking 'Save' we will stay on the settings form. So we can change 514 the cert again. This time we will return to the overview page 515 afterwards: 516 517 >>> browser.getControl(name='form.title').value = "My renamed cert" 518 >>> ctrl = browser.getControl("Save and return") 519 >>> ctrl.click() 520 521 If we go to the settings page and click ``Cancel`` nothing will be 522 changed: 523 524 >>> browser.getLink('Edit settings').click() 525 >>> browser.getControl(name='form.title').value = "Blah" 526 >>> browser.getControl('Cancel').click() 527 528 Our certificate was indeed renamed to ``My renamed cert`` and not to 529 ``Blah``: 530 531 >>> browser.open('http://localhost/myuniversity/faculties/TF/TD') 532 >>> print browser.contents 533 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"... 534 ...<div name="thecerttable"> 535 ...<td>My renamed cert</td>... 536 ... 537 538 539 Deleting certificates 540 --------------------- 541 542 We can delete certificates by browsing the containing department and 543 clicking on the appropriate 'Delete' button. As we have only one 544 certificate, there is only one 'Delete' button yet: 545 546 >>> browser.open('http://localhost/myuniversity/faculties/TF/TD') 547 >>> 'My renamed cert' in browser.contents 548 True 549 550 >>> browser.getControl('Delete').click() 551 552 >>> browser.open('http://localhost/myuniversity/faculties/TF/TD') 553 >>> 'My renamed cert' in browser.contents 401 554 False 402 555
Note: See TracChangeset for help on using the changeset viewer.