
    Bh                     l    d dl Z d dlZd dlmZ d dlmZmZ d Zd Zd Z	 G d dej                        Z
y)	    N)settings)models
migrationsc                 8    | j                   j                  |      S )N)objects
db_manager)modeldb_aliass     Y/home/dcms/DCMS/lib/python3.12/site-packages/cms/migrations/0010_migrate_use_structure.py_get_managerr      s    ==##H--    c                    |j                   j                  }t        j                  t        |      }| j                  dd      }| j                  dd      }| j                  dd      }| j                  t        j                        }| j                  dd      }| j                  dd	      }		  ||      j                  |      }
 ||      j                  |	      } ||      j                  d
|
d      \  }} ||      j                  d|d      \  }} ||      j                  dd      D ]]  }|j                  j                  d|j                        j                         s9|j                  j                  |j                         _  ||      j                         D ]D  }||j                   j                         v s |j                   j                  |j                         F y # t"        $ r t%        j&                  d       Y y w xY w)Nr
   contenttypesContentTypeauth
PermissionGroupcmsPlaceholderPageuse_structureCan use Structure modecodenamecontent_typenamechange_pagezCan change pageFTis_superuseris_staff)r   content_type_idzRUsers not migrated to use_structure permission, please add the permission manually)
connectionalias	functoolspartialr   	get_modelr   AUTH_USER_MODELget_for_modelget_or_createfilteruser_permissionspkexistsaddallpermissions	Exceptionwarningswarn)appsschema_editorr
   get_managerr   r   r   
user_modelph_model
page_modelph_ctype
page_ctype
permission__page_permissionusergroups                    r   forwardsrB      s   ''--H##L8DK..?K5JNN67+E 8 89J~~e]3Hv.Jm{+99(C -;;JG
$Z0>>$8B[ ? ]
B)*5CC"BT D 
  
+22PT2U 	9D$$++]T^TaTa+biik%%))*--8	9 !'++- 	5E%"3"3"7"7"99!!%%jmm4	5  mklms    ,B9G+ &AG+ 'G+ +HHc                 z   |j                   j                  }t        j                  t        |      }| j                  dd      }| j                  dd      }| j                  dd      }| j                  t        j                        }| j                  dd      } ||      j                  |j                  j                  |j                  j                  	      }		  ||      j                  d
|	d      \  }
} ||      j                  dd      D ]'  }|j                  j                  |
j                          )  ||      j#                         D ]D  }|
|j$                  j#                         v s |j$                  j                  |
j                          F y # t&        $ r t)        j*                  d       Y y w xY w)Nr   r   r   r   r   r   r   r   )	app_labelr	   r   r   r   FTr   zRuse_structure not removed from all the users, please check the permission manually)r#   r$   r%   r&   r   r'   r   r(   get_metarD   
model_namer*   r+   r,   remover-   r0   r1   r2   r3   r4   )r5   r6   r
   r7   r   r   r   r8   r9   r;   r=   r>   r@   rA   s                 r   	backwardsrI   *   s   ''--H##L8DK..?K5JNN67+E 8 89J~~e]3H;'++..**nn'' , H
	m$Z0>>$8B[ ? ]
B
+22PT2U 	8D!!((7	8 '++- 	8EU..2244!!((7	8  mklms   BF 1'F F:9F:c                   f    e Zd ZddgZ ej
                  dddi       ej                  ee      gZ	y)	Migration)r   
0009_merge)r   0001_initialplaceholderr1   ))r   r   )r   optionsN)
__name__
__module____qualname__dependenciesr   AlterModelOptions	RunPythonrB   rI   
operations r   r   rK   rK   E   sJ     	(L 	%
$$"$RS	
 	
Xy1Jr   rK   )r3   r%   django.confr   	django.dbr   r   r   rB   rI   rK   rW   r   r   <module>rZ      s4        (.m<m6
$$ r   