[ Index ]
 

Code source de vtiger CRM 5.0.2

Accédez au Source d'autres logiciels libresSoutenez Angelica Josefina !

title

Body

[fermer]

/Smarty/templates/ -> GroupEditView.tpl (source)

   1  {*<!--
   2  /*********************************************************************************
   3    ** The contents of this file are subject to the vtiger CRM Public License Version 1.0
   4     * ("License"); You may not use this file except in compliance with the License
   5     * The Original Code is:  vtiger CRM Open Source
   6     * The Initial Developer of the Original Code is vtiger.
   7     * Portions created by vtiger are Copyright (C) vtiger.
   8     * All Rights Reserved.
   9    *
  10   ********************************************************************************/
  11  -->*}
  12  <script language="JAVASCRIPT" type="text/javascript" src="include/js/smoothscroll.js"></script>
  13  <script language="javascript">
  14  
  15  function dup_validation()
  16  {ldelim}
  17      var mode = getObj('mode').value;
  18      var groupname = $('groupName').value;
  19      var groupid = getObj('groupId').value;
  20      if(mode == 'edit')
  21          var reminstr = '&mode='+mode+'&groupName='+groupname+'&groupid='+groupid;
  22      else
  23          var reminstr = '&groupName='+groupname;
  24      new Ajax.Request(
  25          'index.php',
  26          {ldelim}queue: {ldelim}position: 'end', scope: 'command'{rdelim},
  27              method: 'post',
  28              postBody: 'module=Users&action=UsersAjax&file=SaveGroup&ajax=true&dup_check=true'+reminstr,
  29              onComplete: function(response) {ldelim}
  30                  if(response.responseText.indexOf('SUCESS') >-1)
  31                      document.newGroupForm.submit();
  32                  else
  33                      alert(response.responseText);
  34              {rdelim}
  35          {rdelim}
  36      );
  37  {rdelim}
  38  
  39  var constructedOptionValue;
  40  var constructedOptionName;
  41  
  42  var roleIdArr=new Array({$ROLEIDSTR});
  43  var roleNameArr=new Array({$ROLENAMESTR});
  44  var userIdArr=new Array({$USERIDSTR});
  45  var userNameArr=new Array({$USERNAMESTR});
  46  var grpIdArr=new Array({$GROUPIDSTR});
  47  var grpNameArr=new Array({$GROUPNAMESTR});
  48  
  49  function showOptions()
  50  {ldelim}
  51      var selectedOption=document.newGroupForm.memberType.value;
  52      //Completely clear the select box
  53      document.forms['newGroupForm'].availList.options.length = 0;
  54  
  55      if(selectedOption == 'groups')
  56      {ldelim}
  57          constructSelectOptions('groups',grpIdArr,grpNameArr);        
  58      {rdelim}
  59      else if(selectedOption == 'roles')
  60      {ldelim}
  61          constructSelectOptions('roles',roleIdArr,roleNameArr);        
  62      {rdelim}
  63      else if(selectedOption == 'rs')
  64      {ldelim}
  65      
  66          constructSelectOptions('rs',roleIdArr,roleNameArr);    
  67      {rdelim}
  68      else if(selectedOption == 'users')
  69      {ldelim}
  70          constructSelectOptions('users',userIdArr,userNameArr);        
  71      {rdelim}
  72  {rdelim}
  73  
  74  function constructSelectOptions(selectedMemberType,idArr,nameArr)
  75  {ldelim}
  76      var i;
  77      var findStr=document.newGroupForm.findStr.value;
  78      if(findStr.replace(/^\s+/g, '').replace(/\s+$/g, '').length !=0)
  79      {ldelim}
  80          
  81          var k=0;
  82          for(i=0; i<nameArr.length; i++)
  83          {ldelim}
  84              if(nameArr[i].indexOf(findStr) ==0)
  85              {ldelim}
  86                  constructedOptionName[k]=nameArr[i];
  87                  constructedOptionValue[k]=idArr[i];
  88                  k++;            
  89              {rdelim}
  90          {rdelim}
  91      {rdelim}
  92      else
  93      {ldelim}
  94          constructedOptionValue = idArr;
  95          constructedOptionName = nameArr;    
  96      {rdelim}
  97      
  98      //Constructing the selectoptions
  99      var j;
 100      var nowNamePrefix;    
 101      for(j=0;j<constructedOptionName.length;j++)
 102      {ldelim}
 103          if(selectedMemberType == 'roles')
 104          {ldelim}
 105              nowNamePrefix = 'Roles::'
 106          {rdelim}
 107          else if(selectedMemberType == 'rs')
 108          {ldelim}
 109              nowNamePrefix = 'RoleAndSubordinates::'
 110          {rdelim}
 111          else if(selectedMemberType == 'groups')
 112          {ldelim}
 113              nowNamePrefix = 'Group::'
 114          {rdelim}
 115          else if(selectedMemberType == 'users')
 116          {ldelim}
 117              nowNamePrefix = 'User::'
 118          {rdelim}
 119  
 120          var nowName = nowNamePrefix + constructedOptionName[j];
 121          var nowId = selectedMemberType + '::'  + constructedOptionValue[j]
 122          document.forms['newGroupForm'].availList.options[j] = new Option(nowName,nowId);    
 123      {rdelim}
 124      //clearing the array
 125      constructedOptionValue = new Array();
 126          constructedOptionName = new Array();    
 127                  
 128  
 129  {rdelim}
 130  
 131  function validate()
 132  {ldelim}
 133      formSelectColumnString();
 134      if( !emptyCheck( "groupName", "Group Name" ) )
 135          return false;
 136  
 137      if(trim(document.newGroupForm.groupName.value) == "")
 138      {ldelim}    
 139          alert('Group Name cannot be none');
 140          return false;        
 141      {rdelim}
 142  
 143      //alert(document.newGroupForm.selectedColumnsString.value);
 144      if(document.newGroupForm.selectedColumnsString.value.replace(/^\s+/g, '').replace(/\s+$/g, '').length==0)
 145      {ldelim}
 146  
 147          alert('Group should have at least one member. Select a member to the group');
 148          return false;
 149      {rdelim}
 150      dup_validation();    
 151  {rdelim}
 152  </script>
 153  
 154  <br>
 155  <table align="center" border="0" cellpadding="0" cellspacing="0" width="98%">
 156  <tbody><tr>
 157          <td valign="top"><img src="{$IMAGE_PATH}showPanelTopLeft.gif"></td>
 158          <td class="showPanelBg" style="padding: 10px;" valign="top" width="100%">
 159          <br>
 160  
 161      <div align=center>
 162              {include file='SetMenu.tpl'}
 163                  <!-- DISPLAY -->
 164                  <table border=0 cellspacing=0 cellpadding=5 width=100% class="settingsSelUITopLine">
 165                  <form name="newGroupForm" action="index.php" method="post">
 166                  <input type="hidden" name="module" value="Users">
 167                  <input type="hidden" name="action" value="SaveGroup">
 168                  <input type="hidden" name="mode" value="{$MODE}">
 169                  <input type="hidden" name="parenttab" value="Settings">
 170                  <input type="hidden" name="groupId" value="{$GROUPID}">
 171                  <input type="hidden" name="returnaction" value="{$RETURN_ACTION}">
 172                  <tr>
 173                      <td width=50 rowspan=2 valign=top><img src="{$IMAGE_PATH}ico-groups.gif" alt="Groups" width="48" height="48" border=0 title="Roles"></td>
 174                      {if $MODE eq 'edit'}
 175                      <td class=heading2 valign=bottom><b><a href="index.php?module=Settings&action=index&parenttab=Settings">{$MOD.LBL_SETTINGS}</a> > <a href="index.php?module=Users&action=listgroups&parenttab=Settings">{$CMOD.LBL_GROUPS}</a> &gt; {$MOD.LBL_EDIT} &quot;{$GROUPNAME}&quot; </b></td>
 176                      {else}    
 177                      <td class=heading2 valign=bottom><b><a href="index.php?module=Settings&action=index&parenttab=Settings">{$MOD.LBL_SETTINGS}</a> > <a href="index.php?module=Users&action=listgroups&parenttab=Settings">{$CMOD.LBL_GROUPS}</a> &gt; {$CMOD.LBL_CREATE_NEW_GROUP}</b></td>
 178                      {/if}
 179                  </tr>
 180                  <tr>
 181                      {if $MODE eq 'edit'}
 182                      <td valign=top class="small">{$MOD.LBL_EDIT} {$CMOD.LBL_PROPERTIES} &quot;{$GROUPNAME}&quot; {$CMOD.LBL_GROUP}</td>
 183                      {else}
 184                      <td valign=top class="small">{$CMOD.LBL_NEW_GROUP}</td>
 185                      {/if}
 186                  </tr>
 187                  </table>
 188                  
 189                  <br>
 190                  <table border=0 cellspacing=0 cellpadding=10 width=100% >
 191                  <tr>
 192                  <td valign=top>
 193                      
 194                      <table border=0 cellspacing=0 cellpadding=5 width=100% class="tableHeading">
 195                      <tr>
 196                          {if $MODE eq 'edit'}
 197                          <td class="big"><strong>{$CMOD.LBL_PROPERTIES} &quot;{$GROUPNAME}&quot; </strong></td>
 198                          {else}
 199                          <td class="big"><strong>{$CMOD.LBL_NEW_GROUP}</strong></td>
 200                          {/if}
 201                          <td><div align="right">
 202                          {if $MODE eq 'edit'}
 203                              <input type="button" class="crmButton small save" name="add" value="  {$APP.LBL_SAVE_BUTTON_LABEL}  " onClick="return validate()">
 204                          {else}
 205                              <input type="button" class="crmButton create small" name="add" value="{$CMOD.LBL_ADD_GROUP_BUTTON}" onClick="return validate()">
 206                          {/if}
 207                          &nbsp;
 208                          <input type="button" class="crmButton cancel small" name="cancel" value="{$APP.LBL_CANCEL_BUTTON_LABEL}" onClick="window.history.back()">
 209                          </div></td>
 210                        </tr>
 211                      </table>
 212                      <table width="100%"  border="0" cellspacing="0" cellpadding="5">
 213                        <tr class="small">
 214                          <td width="15%" class="small cellLabel"><font color="red">*</font><strong>{$CMOD.LBL_GROUP_NAME}</strong></td>
 215                          <td width="85%" class="cellText" ><input id="groupName" name="groupName" type="text" value="{$GROUPNAME}" class="detailedViewTextBox"></td>
 216                        </tr>
 217                        <tr class="small">
 218                          <td class="small cellLabel"><strong>{$CMOD.LBL_DESCRIPTION}</strong></td>
 219                          <td class="cellText"><input name="description" type="text" value="{$DESCRIPTION}" class="detailedViewTextBox"> </td>
 220                        </tr>
 221                        <tr class="small">
 222                          <td colspan="2" valign=top class="cellLabel"><strong>{$CMOD.LBL_MEMBER}</strong>                        </td>
 223                        </tr>
 224                        <tr class="small">
 225                          <td colspan="2" valign=top class="cellText"> 
 226                          <br>
 227                          <table width="95%"  border="0" align="center" cellpadding="5" cellspacing="0">
 228                            <tr>
 229                              <td width="40%" valign=top class="cellBottomDotLinePlain small"><strong>{$CMOD.LBL_MEMBER_AVLBL}</strong></td>
 230                              <td width="10%">&nbsp;</td>
 231                              <td width="40%" class="cellBottomDotLinePlain small"><strong>{$CMOD.LBL_MEMBER_SELECTED}</strong></td>
 232                            </tr>
 233                            <tr>
 234                              <td valign=top class="small">
 235                  {$CMOD.LBL_ENTITY}:&nbsp;
 236                  <select id="memberType" name="memberType" class="small" onchange="showOptions()">
 237                            <option value="groups" selected>{$CMOD.LBL_GROUPS}</option>
 238                            <option value="roles">{$CMOD.LBL_ROLES}</option>
 239                            <option value="rs">{$CMOD.LBL_ROLES_SUBORDINATES}</option>
 240                            <option value="users">{$MOD.LBL_USERS}</option>
 241                  </select>
 242          <input type="hidden" name="findStr" class="small">&nbsp;
 243                  </td>
 244                              <td width="50">&nbsp;</td>
 245                              <td class="small">&nbsp;</td>
 246                            </tr>
 247                            <tr class=small>
 248                              <td valign=top>{$CMOD.LBL_MEMBER} {$CMOD.LBL_OF} {$CMOD.LBL_ENTITY}<br>
 249                  <select id="availList" name="availList" multiple size="10" class="small crmFormList">
 250                  </select>
 251                  <input type="hidden" name="selectedColumnsString"/>
 252                              
 253                  </td>
 254                              <td width="50"><div align="center">
 255                  <input type="button" name="Button" value="&nbsp;&rsaquo;&rsaquo;&nbsp;" onClick="addColumn()" class="crmButton small"/><br /><br />
 256                  <input type="button" name="Button1" value="&nbsp;&lsaquo;&lsaquo;&nbsp;" onClick="delColumn()" class="crmButton small"/>
 257                                    </div></td>
 258                              <td class="small" style="background-color:#ddFFdd" valign=top>{$CMOD.LBL_MEMBER} {$CMOD.LBL_OF} &quot;{$GROUPNAME}&quot; <br>
 259                    <select id="selectedColumns" name="selectedColumns" multiple size="10" class="small crmFormList">
 260                  {foreach item=element from=$MEMBER}
 261                  <option value="{$element.0}">{$element.1}</option>
 262                  {/foreach}
 263                                </select></td>
 264                            </tr>
 265                            <tr>
 266                                <td colspan=3>
 267                              <ul class=small>
 268                              <li>{$CMOD.LBL_GROUP_MESG1}</li>
 269                              <li>{$CMOD.LBL_GROUP_MESG2}</li>
 270                              <li>{$CMOD.LBL_GROUP_MESG3}</li>
 271                              </ul>
 272                              
 273                              </td>
 274                          </tr>
 275                          </table>
 276                          
 277                          </td>
 278                        </tr>
 279                      </table>
 280                      <br>
 281                      <table border=0 cellspacing=0 cellpadding=5 width=100% >
 282                      <tr><td class="small" nowrap align=right><a href="#top">{$MOD.LBL_SCROLL}</a></td></tr>
 283                      </table>
 284                      
 285                      
 286                  </td>
 287                  </tr>
 288                  <tr>
 289                    <td valign=top>&nbsp;</td>
 290                    </tr>
 291                  </table>
 292              
 293              
 294              
 295              </td>
 296              </tr>
 297              </table>
 298          </td>
 299      </tr>
 300      </form>
 301      </table>
 302          
 303      </div>
 304  
 305  </td>
 306          <td valign="top"><img src="{$IMAGE_PATH}showPanelTopRight.gif"></td>
 307     </tr>
 308  </tbody>
 309  </table>
 310  <script language="JavaScript" type="text/JavaScript">    
 311  var moveupLinkObj,moveupDisabledObj,movedownLinkObj,movedownDisabledObj;
 312  function setObjects() 
 313  {ldelim}
 314  availListObj=getObj("availList")
 315  selectedColumnsObj=getObj("selectedColumns")
 316  
 317  {rdelim}
 318  
 319  function addColumn() 
 320  {ldelim}
 321  for (i=0;i<selectedColumnsObj.length;i++) 
 322  {ldelim}
 323  selectedColumnsObj.options[i].selected=false
 324  {rdelim}
 325  
 326  for (i=0;i<availListObj.length;i++) 
 327  {ldelim}
 328  if (availListObj.options[i].selected==true) 
 329  {ldelim}
 330  for (j=0;j<selectedColumnsObj.length;j++) 
 331  {ldelim}
 332  if (selectedColumnsObj.options[j].value==availListObj.options[i].value) 
 333  {ldelim}
 334  var rowFound=true
 335  var existingObj=selectedColumnsObj.options[j]
 336  break
 337  {rdelim}
 338  {rdelim}
 339  
 340  if (rowFound!=true) 
 341  {ldelim}
 342  var newColObj=document.createElement("OPTION")
 343  newColObj.value=availListObj.options[i].value
 344  if (browser_ie) newColObj.innerText=availListObj.options[i].innerText
 345      else if (browser_nn4 || browser_nn6) newColObj.text=availListObj.options[i].text
 346  selectedColumnsObj.appendChild(newColObj)
 347      availListObj.options[i].selected=false
 348      newColObj.selected=true
 349      rowFound=false
 350  {rdelim}
 351  else 
 352  {ldelim}
 353  existingObj.selected=true
 354  {rdelim}
 355  {rdelim}
 356  {rdelim}
 357  {rdelim}
 358  
 359  function delColumn() 
 360  {ldelim}
 361  for (i=0;i<=selectedColumnsObj.options.length;i++) 
 362  {ldelim}
 363      if (selectedColumnsObj.options.selectedIndex>=0)
 364  selectedColumnsObj.remove(selectedColumnsObj.options.selectedIndex)
 365  {rdelim}
 366  {rdelim}
 367  
 368  function formSelectColumnString()
 369  {ldelim}
 370  var selectedColStr = "";
 371  for (i=0;i<selectedColumnsObj.options.length;i++) 
 372  {ldelim}
 373  selectedColStr += selectedColumnsObj.options[i].value + ";";
 374  {rdelim}
 375  document.newGroupForm.selectedColumnsString.value = selectedColStr;
 376  {rdelim}
 377  setObjects();
 378  showOptions();
 379  </script>


Généré le : Sun Feb 25 10:22:19 2007 par Balluche grâce à PHPXref 0.7