экран 17экран 18дополнительно
17 экран
номер ед.хр. 1
том ед.хр. 0
номер ед. уч.
заголовок
Делегаты Малмыжской уездной конференции РКП(б)
Рубрика
    № по старой описи
    производственный №
    даты документов 1919-01-011919-12-31 (19190101/19191231)
    неточная дата
    том описи
    количество листов 1
    категория
    тип документации

    составлено: 2012-04-28 00:00:00 составитель: гл. спец. Зонова А.А.

      * жёлтым подсвечиваются поля для редактирования, сделайте по ним двойной щелчок

      экран 17экран 18дополнительно
      фонд № П- 245, «Коллекция фотодокументов партийных, общественных организаций и редакций областных газет»
      опись № 3, «Фотодокументы делегатов партийных съездов и конференций.»
      дело «№ 10, Делегации партийных организаций областей и автономных республик РСФСР с руководителями КПСС и Советского правительства на XXII съезде КПСС в Москве»
      17 экран
      номер ед.хр. 10
      том ед.хр. 0
      номер ед. уч.
      заголовок
      Делегации партийных организаций областей и автономных республик РСФСР с руководителями КПСС и Советского правительства на XXII съезде КПСС в Москве
      Рубрика
        № по старой описи
        производственный №
        даты документов 1961-10-171961-10-17 (19611017/19611017)
        неточная дата
        том описи
        количество листов 1
        категория
        тип документации

        составлено: 2012-04-28 00:00:00 составитель: гл. спец. Зонова А.А.

          * жёлтым подсвечиваются поля для редактирования, сделайте по ним двойной щелчок

          экран 17экран 18дополнительно
          17 экран
          номер ед.хр. 11
          том ед.хр. 0
          номер ед. уч.
          заголовок
          Делегаты XXII съезда КПСС от Кировской партийной организации
          Рубрика
            № по старой описи
            производственный №
            даты документов 1961-10-171961-10-17 (19611017/19611017)
            неточная дата
            том описи
            количество листов 1
            категория
            тип документации

            составлено: 2012-04-28 00:00:00 составитель: гл. спец. Зонова А.А.

              * жёлтым подсвечиваются поля для редактирования, сделайте по ним двойной щелчок

              экран 17экран 18дополнительно
              17 экран
              номер ед.хр. 12
              том ед.хр. 0
              номер ед. уч.
              заголовок
              Делегаты XXIII съезда КПСС с руководителями партии и Советского правительства
              Рубрика
                № по старой описи
                производственный №
                даты документов 1966-03-291966-03-29 (19660329/19660329)
                неточная дата
                том описи
                количество листов 1
                категория
                тип документации

                составлено: 2012-08-02 10:34:01 составитель: гл. спец. Зонова А.А.

                  * жёлтым подсвечиваются поля для редактирования, сделайте по ним двойной щелчок

                  экран 17экран 18дополнительно
                  17 экран
                  номер ед.хр. 13
                  том ед.хр. 0
                  номер ед. уч.
                  заголовок
                  Варзегова-Ростовцева Елизавета Ивановна-делегат IX съезда РКП(б)
                  Рубрика
                    № по старой описи
                    производственный №
                    даты документов 1922-01-191926-11-12 (19220119/19261112)
                    неточная дата
                    том описи
                    количество листов 19
                    категория
                    тип документации

                    составлено: 2012-08-02 10:46:51 составитель: гл. спец. Зонова А.А.

                      * жёлтым подсвечиваются поля для редактирования, сделайте по ним двойной щелчок

                      экран 17экран 18дополнительно
                      17 экран
                      номер ед.хр. 14
                      том ед.хр. 0
                      номер ед. уч.
                      заголовок
                      Орлов Александр Федорович - делегат X съезда РКП(б)
                      Рубрика
                        № по старой описи
                        производственный №
                        даты документов 1922-06-151924-02-14 (19220615/19240214)
                        неточная дата
                        том описи
                        количество листов 16
                        категория
                        тип документации

                        составлено: 2012-08-02 10:53:36 составитель: гл. спец. Зонова А.А.

                          * жёлтым подсвечиваются поля для редактирования, сделайте по ним двойной щелчок

                          экран 17экран 18дополнительно
                          17 экран
                          номер ед.хр. 15
                          том ед.хр. 0
                          номер ед. уч.
                          заголовок
                          Лизарев Федор Семенович - делегат XII съезда РКП(б), председатель Вятского губернского комитета РКП(б)
                          Рубрика
                            № по старой описи
                            производственный №
                            даты документов 1923-03-021924-04-07 (19230302/19240407)
                            неточная дата
                            том описи
                            количество листов 22
                            категория
                            тип документации

                            составлено: 2012-08-02 11:07:47 составитель: гл. спец. Зонова А.А.

                              * жёлтым подсвечиваются поля для редактирования, сделайте по ним двойной щелчок

                              экран 17экран 18дополнительно
                              фонд № П- 245, «Коллекция фотодокументов партийных, общественных организаций и редакций областных газет»
                              опись № 3, «Фотодокументы делегатов партийных съездов и конференций.»
                              дело «№ 16, Миньков Марк Ильич - делегат XII съезда РКП(б), ответственный секретарь Вятского губернского комитета РКП(б)»
                              17 экран
                              номер ед.хр. 16
                              том ед.хр. 0
                              номер ед. уч.
                              заголовок
                              Миньков Марк Ильич - делегат XII съезда РКП(б), ответственный секретарь Вятского губернского комитета РКП(б)
                              Рубрика
                                № по старой описи
                                производственный №
                                даты документов 1921-06-121924-03-01 (19210612/19240301)
                                неточная дата
                                том описи
                                количество листов 17
                                категория
                                тип документации

                                составлено: 2012-08-02 11:11:48 составитель: гл. спец. Зонова А.А.

                                  * жёлтым подсвечиваются поля для редактирования, сделайте по ним двойной щелчок

                                  экран 17экран 18дополнительно
                                  17 экран
                                  номер ед.хр. 17
                                  том ед.хр. 0
                                  номер ед. уч.
                                  заголовок
                                  Засухин Никифор Николаевич - делегат XIII съезда РКП(б)
                                  Рубрика
                                    № по старой описи
                                    производственный №
                                    даты документов 1924-06-251924-06-25 (19240625/19240625)
                                    неточная дата
                                    том описи
                                    количество листов 3
                                    категория
                                    тип документации

                                    составлено: 2012-08-02 11:14:33 составитель: гл. спец. Зонова А.А.

                                      * жёлтым подсвечиваются поля для редактирования, сделайте по ним двойной щелчок

                                      экран 17экран 18дополнительно
                                      фонд № П- 245, «Коллекция фотодокументов партийных, общественных организаций и редакций областных газет»
                                      опись № 3, «Фотодокументы делегатов партийных съездов и конференций.»
                                      дело «№ 18, Пересторонин Филипп Корнилович - делегат XIV съезда ВКП(б), ответственный секретарь Халтуринского уездного комитета ВКП(б)»
                                      17 экран
                                      номер ед.хр. 18
                                      том ед.хр. 0
                                      номер ед. уч.
                                      заголовок
                                      Пересторонин Филипп Корнилович - делегат XIV съезда ВКП(б), ответственный секретарь Халтуринского уездного комитета ВКП(б)
                                      Рубрика
                                        № по старой описи
                                        производственный №
                                        даты документов 1924-07-211924-07-21 (19240721/19240721)
                                        неточная дата
                                        том описи
                                        количество листов 4
                                        категория
                                        тип документации

                                        составлено: 2012-08-02 11:17:54 составитель: гл. спец. Зонова А.А.

                                          * жёлтым подсвечиваются поля для редактирования, сделайте по ним двойной щелчок

                                          экран 17экран 18дополнительно
                                          17 экран
                                          номер ед.хр. 19
                                          том ед.хр. 0
                                          номер ед. уч.
                                          заголовок
                                          Делегаты XV съезда ВКП(б) от Вятской губернии и Северо-Восточного района
                                          Рубрика
                                            № по старой описи
                                            производственный №
                                            даты документов 1927-12-061927-12-09 (19271206/19271209)
                                            неточная дата
                                            том описи
                                            количество листов 2
                                            категория
                                            тип документации

                                            составлено: 2012-08-02 11:29:24 составитель: гл. спец. Зонова А.А.

                                              * жёлтым подсвечиваются поля для редактирования, сделайте по ним двойной щелчок

                                              экран 17экран 18дополнительно
                                              17 экран
                                              номер ед.хр. 2
                                              том ед.хр. 0
                                              номер ед. уч.
                                              заголовок
                                              Делегаты XII Вятской губернской партийной конференции
                                              Рубрика
                                                № по старой описи
                                                производственный №
                                                даты документов 1920-11-151920-11-15 (19201115/19201115)
                                                неточная дата
                                                том описи
                                                количество листов 1
                                                категория
                                                тип документации

                                                составлено: 2012-04-28 00:00:00 составитель: гл. спец. Зонова А.А.

                                                  * жёлтым подсвечиваются поля для редактирования, сделайте по ним двойной щелчок

                                                  экран 17экран 18дополнительно
                                                  17 экран
                                                  номер ед.хр. 20
                                                  том ед.хр. 0
                                                  номер ед. уч.
                                                  заголовок
                                                  Мамаев Емельян Васильевич - делегат XV съезда ВКП(б)
                                                  Рубрика
                                                    № по старой описи
                                                    производственный №
                                                    даты документов 1923-08-221924-05-22 (19230822/19240522)
                                                    неточная дата
                                                    том описи
                                                    количество листов 11
                                                    категория
                                                    тип документации

                                                    составлено: 2012-08-02 12:12:24 составитель: гл. спец. Зонова А.А.

                                                      * жёлтым подсвечиваются поля для редактирования, сделайте по ним двойной щелчок

                                                      экран 17экран 18дополнительно
                                                      17 экран
                                                      номер ед.хр. 21
                                                      том ед.хр. 0
                                                      номер ед. уч.
                                                      заголовок
                                                      Петровский Иосиф Станиславович - делегат XV съезда ВКП(б)
                                                      Рубрика
                                                        № по старой описи
                                                        производственный №
                                                        даты документов 1924-08-201924-08-20 (19240820/19240820)
                                                        неточная дата
                                                        том описи
                                                        количество листов 5
                                                        категория
                                                        тип документации

                                                        составлено: 2012-08-02 12:22:31 составитель: гл. спец. Зонова А.А.

                                                          * жёлтым подсвечиваются поля для редактирования, сделайте по ним двойной щелчок

                                                          экран 17экран 18дополнительно
                                                          17 экран
                                                          номер ед.хр. 22
                                                          том ед.хр. 0
                                                          номер ед. уч.
                                                          заголовок
                                                          Фокеев Евгений Иванович - делегат XIX съезда ВКП(б)
                                                          Рубрика
                                                            № по старой описи
                                                            производственный №
                                                            даты документов 1944-01-011944-12-31 (19440101/19441231)
                                                            неточная дата
                                                            том описи
                                                            количество листов 1
                                                            категория
                                                            тип документации

                                                            составлено: 2012-08-02 12:26:03 составитель: гл. спец. Зонова А.А.

                                                              * жёлтым подсвечиваются поля для редактирования, сделайте по ним двойной щелчок

                                                              экран 17экран 18дополнительно
                                                              фонд № П- 245, «Коллекция фотодокументов партийных, общественных организаций и редакций областных газет»
                                                              опись № 3, «Фотодокументы делегатов партийных съездов и конференций.»
                                                              дело «№ 23, Громоздов Михаил Антонович - делегат XXIII съезда КПСС, токарь Кировского машиностроительного производственного объединения имени XX партсъезда»
                                                              17 экран
                                                              номер ед.хр. 23
                                                              том ед.хр. 0
                                                              номер ед. уч.
                                                              заголовок
                                                              Громоздов Михаил Антонович - делегат XXIII съезда КПСС, токарь Кировского машиностроительного производственного объединения имени XX партсъезда
                                                              Рубрика
                                                                № по старой описи
                                                                производственный №
                                                                даты документов ____1987-02-27 (19660300/19870227)
                                                                неточная дата
                                                                том описи
                                                                количество листов 7
                                                                категория
                                                                тип документации

                                                                составлено: 2012-08-02 12:52:58 составитель: гл. спец. Зонова А.А.

                                                                  * жёлтым подсвечиваются поля для редактирования, сделайте по ним двойной щелчок

                                                                  экран 17экран 18дополнительно
                                                                  фонд № П- 245, «Коллекция фотодокументов партийных, общественных организаций и редакций областных газет»
                                                                  опись № 3, «Фотодокументы делегатов партийных съездов и конференций.»
                                                                  дело «№ 24, Кислицын Аркадий Ефимович - делегат XXIV съезда КПСС, первый секретарь Уржумского районного комитета КПСС»
                                                                  17 экран
                                                                  номер ед.хр. 24
                                                                  том ед.хр. 0
                                                                  номер ед. уч.
                                                                  заголовок
                                                                  Кислицын Аркадий Ефимович - делегат XXIV съезда КПСС, первый секретарь Уржумского районного комитета КПСС
                                                                  Рубрика
                                                                    № по старой описи
                                                                    производственный №
                                                                    даты документов 1943-01-011984-12-31 (19430101/19841231)
                                                                    неточная дата
                                                                    том описи
                                                                    количество листов 17
                                                                    категория
                                                                    тип документации

                                                                    составлено: 2012-08-02 13:14:44 составитель: гл. спец. Зонова А.А.

                                                                      * жёлтым подсвечиваются поля для редактирования, сделайте по ним двойной щелчок

                                                                      экран 17экран 18дополнительно
                                                                      фонд № П- 245, «Коллекция фотодокументов партийных, общественных организаций и редакций областных газет»
                                                                      опись № 3, «Фотодокументы делегатов партийных съездов и конференций.»
                                                                      дело «№ 25, Прудников Владимир Антонович, делегат XXIV съезда КПСС, директор Кировского машиностроительного производственного объединения имени XX съезда КПСС»
                                                                      17 экран
                                                                      номер ед.хр. 25
                                                                      том ед.хр. 0
                                                                      номер ед. уч.
                                                                      заголовок
                                                                      Прудников Владимир Антонович, делегат XXIV съезда КПСС, директор Кировского машиностроительного производственного объединения имени XX съезда КПСС
                                                                      Рубрика
                                                                        № по старой описи
                                                                        производственный №
                                                                        даты документов 1975-01-011975-12-31 (19750101/19751231)
                                                                        неточная дата
                                                                        том описи
                                                                        количество листов 1
                                                                        категория
                                                                        тип документации

                                                                        составлено: 2012-08-03 15:01:17 составитель: гл. спец. Зонова А.А.

                                                                          * жёлтым подсвечиваются поля для редактирования, сделайте по ним двойной щелчок

                                                                          экран 17экран 18дополнительно
                                                                          фонд № П- 245, «Коллекция фотодокументов партийных, общественных организаций и редакций областных газет»
                                                                          опись № 3, «Фотодокументы делегатов партийных съездов и конференций.»
                                                                          дело «№ 26, Работники колхоза имени С.М. Кирова Уржумского района: (справа налево) Бердникова Елизавета Алексеевна, делегат XXV съезда КПСС, секретарь партийного комитета колхоза, Градобоева Алла, секретарь комсомольского комитета колхоза»
                                                                          17 экран
                                                                          номер ед.хр. 26
                                                                          том ед.хр. 0
                                                                          номер ед. уч.
                                                                          заголовок
                                                                          Работники колхоза имени С.М. Кирова Уржумского района: (справа налево) Бердникова Елизавета Алексеевна, делегат XXV съезда КПСС, секретарь партийного комитета колхоза, Градобоева Алла, секретарь комсомольского комитета колхоза
                                                                          Рубрика
                                                                            № по старой описи
                                                                            производственный №
                                                                            даты документов 1979-01-011979-12-31 (19790101/19791231)
                                                                            неточная дата
                                                                            том описи
                                                                            количество листов 1
                                                                            категория
                                                                            тип документации

                                                                            составлено: 2012-08-03 15:06:25 составитель: гл. спец. Зонова А.А.

                                                                              * жёлтым подсвечиваются поля для редактирования, сделайте по ним двойной щелчок

                                                                              экран 17экран 18дополнительно
                                                                              фонд № П- 245, «Коллекция фотодокументов партийных, общественных организаций и редакций областных газет»
                                                                              опись № 3, «Фотодокументы делегатов партийных съездов и конференций.»
                                                                              дело «№ 27, Протасов Леонид Ильич, делегат XXV съезда КПСС, руководитель производственной практики учащихся на Кировском машиностроительном объединении имени XX съезда КПСС, Герой Социалистического труда»
                                                                              17 экран
                                                                              номер ед.хр. 27
                                                                              том ед.хр. 0
                                                                              номер ед. уч.
                                                                              заголовок
                                                                              Протасов Леонид Ильич, делегат XXV съезда КПСС, руководитель производственной практики учащихся на Кировском машиностроительном объединении имени XX съезда КПСС, Герой Социалистического труда
                                                                              Рубрика
                                                                                № по старой описи
                                                                                производственный №
                                                                                даты документов 1987-02-241987-02-24 (19870224/19870224)
                                                                                неточная дата
                                                                                том описи
                                                                                количество листов 5
                                                                                категория
                                                                                тип документации

                                                                                составлено: 2012-08-03 15:22:35 составитель: гл. спец. Зонова А.А.

                                                                                  * жёлтым подсвечиваются поля для редактирования, сделайте по ним двойной щелчок

                                                                                  экран 17экран 18дополнительно
                                                                                  17 экран
                                                                                  номер ед.хр. 28
                                                                                  том ед.хр. 0
                                                                                  номер ед. уч.
                                                                                  заголовок
                                                                                  Сандалова Алевтина Аркадьевна, делегат XXV съезда КПСС, кировская электросварщица-монтажница
                                                                                  Рубрика
                                                                                    № по старой описи
                                                                                    производственный №
                                                                                    даты документов 1976-01-011976-12-31 (19760101/19761231)
                                                                                    неточная дата
                                                                                    том описи
                                                                                    количество листов 1
                                                                                    категория
                                                                                    тип документации

                                                                                    составлено: 2012-08-03 15:45:33 составитель: гл. спец. Зонова А.А.

                                                                                      * жёлтым подсвечиваются поля для редактирования, сделайте по ним двойной щелчок

                                                                                      экран 17экран 18дополнительно
                                                                                      фонд № П- 245, «Коллекция фотодокументов партийных, общественных организаций и редакций областных газет»
                                                                                      опись № 3, «Фотодокументы делегатов партийных съездов и конференций.»
                                                                                      дело «№ 29, Счастливцев Николай Степанович, делегат XXV съезда КПСС, директор Кировского завода по обработке цветных металлов (ОЦМ) в 1962-1985 гг.»
                                                                                      17 экран
                                                                                      номер ед.хр. 29
                                                                                      том ед.хр. 0
                                                                                      номер ед. уч.
                                                                                      заголовок
                                                                                      Счастливцев Николай Степанович, делегат XXV съезда КПСС, директор Кировского завода по обработке цветных металлов (ОЦМ) в 1962-1985 гг.
                                                                                      Рубрика
                                                                                        № по старой описи
                                                                                        производственный №
                                                                                        даты документов 1978-01-011978-12-31 (19780101/19781231)
                                                                                        неточная дата
                                                                                        том описи
                                                                                        количество листов 1
                                                                                        категория
                                                                                        тип документации

                                                                                        составлено: 2012-08-06 11:17:44 составитель: гл. спец. Зонова А.А.

                                                                                          * жёлтым подсвечиваются поля для редактирования, сделайте по ним двойной щелчок

                                                                                          экран 17экран 18дополнительно
                                                                                          17 экран
                                                                                          номер ед.хр. 3
                                                                                          том ед.хр. 0
                                                                                          номер ед. уч.
                                                                                          заголовок
                                                                                          Делегаты XV Вятской губернской конференции РКП(б)
                                                                                          Рубрика
                                                                                            № по старой описи
                                                                                            производственный №
                                                                                            даты документов 1924-12-281924-12-28 (19241228/19241228)
                                                                                            неточная дата
                                                                                            том описи
                                                                                            количество листов 1
                                                                                            категория
                                                                                            тип документации

                                                                                            составлено: 2012-04-28 00:00:00 составитель: гл. спец. Зонова А.А.

                                                                                              * жёлтым подсвечиваются поля для редактирования, сделайте по ним двойной щелчок

                                                                                              экран 17экран 18дополнительно
                                                                                              фонд № П- 245, «Коллекция фотодокументов партийных, общественных организаций и редакций областных газет»
                                                                                              опись № 3, «Фотодокументы делегатов партийных съездов и конференций.»
                                                                                              дело «№ 30, Максимов Дмитрий Степанович, делегат XXVI съезда КПСС, первый секретарь Немского районного комитета КПСС»
                                                                                              17 экран
                                                                                              номер ед.хр. 30
                                                                                              том ед.хр. 0
                                                                                              номер ед. уч.
                                                                                              заголовок
                                                                                              Максимов Дмитрий Степанович, делегат XXVI съезда КПСС, первый секретарь Немского районного комитета КПСС
                                                                                              Рубрика
                                                                                                № по старой описи
                                                                                                производственный №
                                                                                                даты документов 1985-04-181985-04-20 (19850418/19850420)
                                                                                                неточная дата
                                                                                                том описи
                                                                                                количество листов 7
                                                                                                категория
                                                                                                тип документации

                                                                                                составлено: 2012-08-06 11:33:57 составитель: гл. спец. Зонова А.А.

                                                                                                  * жёлтым подсвечиваются поля для редактирования, сделайте по ним двойной щелчок

                                                                                                  экран 17экран 18дополнительно
                                                                                                  17 экран
                                                                                                  номер ед.хр. 31
                                                                                                  том ед.хр. 0
                                                                                                  номер ед. уч.
                                                                                                  заголовок
                                                                                                  Надеев Авенир Васильевич, делегат XXVI съезда КПСС, первый секретарь Пижанского районного комитета КПСС
                                                                                                  Рубрика
                                                                                                    № по старой описи
                                                                                                    производственный №
                                                                                                    даты документов ________ (19810700/19810700)
                                                                                                    неточная дата
                                                                                                    том описи
                                                                                                    количество листов 1
                                                                                                    категория
                                                                                                    тип документации

                                                                                                    составлено: 2012-08-06 11:48:54 составитель: гл. спец. Зонова А.А.

                                                                                                      * жёлтым подсвечиваются поля для редактирования, сделайте по ним двойной щелчок

                                                                                                      у этой описи нет дел

                                                                                                      Исходный код модуля /home/httpd/af-web.gaspiko.ru/cgi-bin/plugins2/delo_show.pyc

                                                                                                      # -*- coding: utf8 -*-
                                                                                                      import libs
                                                                                                      SQL = (
                                                                                                          ("delo","""
                                                                                                      select
                                                                                                              @DELO_ID:=D.KOD as DELO_ID,FOND_ID, O.*,DS.*,D.*,U.FIO,
                                                                                                              (select count(*) from list_nagrada LN where DS.DELO_ID=LN.DELO_ID)as count_nagrada,
                                                                                                              (select count(*) from digital_image dim where DS.DELO_ID=dim.DELO_ID)as count_dig_img
                                                                                                          from
                                                                                                              DELO D
                                                                                                              left join delo_sys DS on (D.KOD=DS.DELO_ID)
                                                                                                              left join opis  O on (OPIS=O.OPIS_ID)
                                                                                                              left join users  U on (uid=U.id)
                                                                                                          %(where)s
                                                                                                          limit %(offset)d,%(limit)d;"""),
                                                                                                          ("rubrikator","""select * from rubrikator_links_sys where `item_id`=@DELO_ID and `plugins_name`='delo_list';"""),
                                                                                                      )
                                                                                                      FOUND_ROWS = False
                                                                                                      ROOT = "show_delo"
                                                                                                      ROOT_PREFIX = ""
                                                                                                      ROOT_POSTFIX= None
                                                                                                      XSL_TEMPLATE = "data/af-web.xsl"
                                                                                                      EVENT = {"L4":libs.make_str_cdata,}
                                                                                                      WHERE = ("FOND_ID", "OPIS_ID", "DELO_ID","KOD")
                                                                                                      PARAM = ("OPIS_ID", )
                                                                                                      TITLE="Дело"
                                                                                                      MESSAGE="у этой описи нет дел"
                                                                                                      ORDER = None

                                                                                                      Исходный код модуля /home/httpd/af-web.gaspiko.ru/cgi-bin/app2.py

                                                                                                      #!/usr/bin/env python
                                                                                                      #
                                                                                                      #       app2.py
                                                                                                      #
                                                                                                      #       Copyright 2010 Basmanov Illya 
                                                                                                      #
                                                                                                      #       This program is free software; you can redistribute it and/or modify
                                                                                                      #       it under the terms of the GNU General Public License as published by
                                                                                                      #       the Free Software Foundation; either version 2 of the License, or
                                                                                                      #       (at your option) any later version.
                                                                                                      #
                                                                                                      #       This program 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 General Public License for more details.
                                                                                                      #
                                                                                                      #       You should have received a copy of the GNU General Public License
                                                                                                      #       along with this program; if not, write to the Free Software
                                                                                                      #       Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
                                                                                                      #       MA 02110-1301, USA.
                                                                                                      import sys
                                                                                                      import config

                                                                                                      #sys.stderr = sys.stdout
                                                                                                      #print "Content-Type: text/html; charset=utf8\n\n"

                                                                                                      import ffcgi
                                                                                                      import libs
                                                                                                      from user import user
                                                                                                      from base import bd_sql
                                                                                                      from xslt_proc import xml_xsl_proc

                                                                                                      plugin_dir = "plugins2"


                                                                                                      def load_module():
                                                                                                          if ffcgi.cgi_check_name("plugins"):
                                                                                                              module_name = ffcgi.cgi_value( "plugins" )
                                                                                                              return libs.load_module_name(module_name, plugin_dir)
                                                                                                          else:
                                                                                                              return None


                                                                                                      def load_env():
                                                                                                          data, page, limit = {}, 0, int(config.limit)
                                                                                                          if ffcgi.cgi_check_name("p"):
                                                                                                              page = int(ffcgi.cgi_value("p"))
                                                                                                          if ffcgi.cgi_check_name("l"):
                                                                                                              limit = int(ffcgi.cgi_value("l"))
                                                                                                          if ffcgi.cgi_check_name("plugins"):
                                                                                                              data["plugins"] = ffcgi.cgi_value( "plugins" )
                                                                                                          if ffcgi.cgi_value("ORDER_DIRECTION") in ("DESC", "ASC"):
                                                                                                              data["direction"] = ffcgi.cgi_value("ORDER_DIRECTION")
                                                                                                          else:
                                                                                                              data["direction"] = "DESC"
                                                                                                          data["page"] = page
                                                                                                          data["limit"] = limit
                                                                                                          data["offset"] = page * limit
                                                                                                          xml = user[3] +"%(page)d%(limit)d%(offset)d%(plugins)s%(direction)s"%data
                                                                                                          return data, xml

                                                                                                      def make_order(cgi_param):
                                                                                                          if cgi_param is not None:
                                                                                                              order = []
                                                                                                              direction = "DESC"
                                                                                                              if ffcgi.cgi_value("ORDER_DIRECTION") in ("DESC", "ASC"):
                                                                                                                  direction = ffcgi.cgi_value("ORDER_DIRECTION")
                                                                                                              for param in cgi_param:
                                                                                                                  if ffcgi.cgi_value("ORDER") == param:
                                                                                                                      value = param
                                                                                                                      if type(value) == list:
                                                                                                                          order.append( ", ".join(["`%s`"%v for v in value]) )
                                                                                                                      elif type(value) == str:
                                                                                                                          order.append( "`%s`"%value )
                                                                                                                      return " ORDER BY %s %s"%(",".join(order), direction)
                                                                                                          return ""


                                                                                                      def make_where(cgi_param, IF_ID_DOMEN=None):
                                                                                                          if cgi_param is None:
                                                                                                              return ""
                                                                                                          where = []
                                                                                                          where_like = []
                                                                                                          if IF_ID_DOMEN is not None:
                                                                                                              where.append(IF_ID_DOMEN)
                                                                                                          if ffcgi.cgi_check_name("WHERE_LIKE"):
                                                                                                              where_like = ffcgi.cgi_value("WHERE_LIKE")
                                                                                                          for param in cgi_param:
                                                                                                              if ffcgi.cgi_check_name(param):
                                                                                                                  value = ffcgi.cgi_value(param)
                                                                                                                  if type(value) == list:
                                                                                                                      param = param.replace('.','`.`')
                                                                                                                      if ffcgi.cgi_check_name("BETWEEN") and len(value)==2:
                                                                                                                          where.append( "`%s` BETWEEN %s AND %s"%(param, value[0], value[1] ))
                                                                                                                      else:
                                                                                                                          where.append( "`%s` IN (%s)"%(param, ", ".join(["'%s'"%v for v in value])) )
                                                                                                                  elif type(value) == str or type(value) == int :
                                                                                                                      if param in where_like:
                                                                                                                          param = param.replace('.','`.`')
                                                                                                                          where.append( "`%s` LIKE '%%%s%%'"%(param, str(value)) )
                                                                                                                      else:
                                                                                                                          param = param.replace('.','`.`')
                                                                                                                          where.append( "`%s`='%s'"%(param, str(value)) )
                                                                                                                  else:
                                                                                                                      pass
                                                                                                          if len(where):
                                                                                                              where = " AND ".join(where)
                                                                                                              return "WHERE "+where
                                                                                                          return ""

                                                                                                      def list_to_xml(listtx):
                                                                                                          txml = ""
                                                                                                          if listtx:
                                                                                                                  for lx in listtx:
                                                                                                                      txml += "%s"%lx
                                                                                                          return txml

                                                                                                      def exec_sql(module, data, sql, root):
                                                                                                          xml = ""
                                                                                                          try:
                                                                                                              sql = sql%data
                                                                                                              if ffcgi.cgi_check_name("SQL"):
                                                                                                                  print sql, ""
                                                                                                              if bd_sql.execute( sql, module.TITLE ):
                                                                                                                  txml = bd_sql.get_xml( event = module.EVENT)
                                                                                                                  if module.FOUND_ROWS:
                                                                                                                      if bd_sql.execute( "select found_rows() as count;" ):
                                                                                                                          txml += bd_sql.get_xml("all_count")
                                                                                                                  xml = "<%s>%s"%(root, txml, root)
                                                                                                              else:
                                                                                                                  if module.ROOT_POSTFIX:
                                                                                                                      xml += module.ROOT_POSTFIX
                                                                                                                  xml += libs.make_message( "%s"%libs.make_cdata(module.MESSAGE) + "%s"%libs.make_cdata(sql) )
                                                                                                          except Exception, e:
                                                                                                              xml += libs.make_message( "%s: %s"%libs.make_cdata(module.MESSAGE, e) )
                                                                                                          return xml

                                                                                                      def exec_sql_json(module, data, sql, root):
                                                                                                          json_data = {root: {}, }
                                                                                                          try:
                                                                                                              sql = sql%data
                                                                                                              if ffcgi.cgi_check_name("SQL"):
                                                                                                                  print sql, ""
                                                                                                              if bd_sql.execute( sql, module.TITLE ):
                                                                                                                  json_data[root]["row"] = bd_sql.get_row()
                                                                                                                  if module.FOUND_ROWS:
                                                                                                                      if bd_sql.execute( "select found_rows() as count;" ):
                                                                                                                          json_data[root]["all_count"] = bd_sql.get_row()[0][0]
                                                                                                              else:
                                                                                                                  json_data[root]['error-message'] = module.MESSAGE
                                                                                                                  json_data[root]['error-sql'] = sql
                                                                                                          except Exception, e:
                                                                                                              json_data[root]['error-message'] = module.MESSAGE
                                                                                                              json_data[root]['error-sql'] = sql
                                                                                                          return json_data

                                                                                                      def main():

                                                                                                          module = load_module()
                                                                                                          if module:
                                                                                                              data, xml = load_env()
                                                                                                              xml += ffcgi.cgi_xml() + "%s"%list_to_xml(module.WHERE)
                                                                                                              if_id_domen = None
                                                                                                              if "IF_ID_DOMEN" in dir(module):
                                                                                                                  if_id_domen = module.IF_ID_DOMEN
                                                                                                              data["where"] = make_where(module.WHERE, if_id_domen)
                                                                                                              data["order"] = make_order(module.ORDER)
                                                                                                              xml += "%s"%module.TITLE


                                                                                                              if module.PARAM:
                                                                                                                  txml = ""
                                                                                                                  for param in module.PARAM:
                                                                                                                      if ffcgi.cgi_check_name(param):
                                                                                                                          value = ffcgi.cgi_value(param)
                                                                                                                          if type(value) == list:
                                                                                                                              for v in value:
                                                                                                                                  data[param] = v
                                                                                                                                  txml += "<%s>%s"%(param, libs.make_str_cdata( v ), param)
                                                                                                                          elif type(value) == str:
                                                                                                                              data[param] = value
                                                                                                                              txml += "<%s>%s"%(param, libs.make_str_cdata(value), param)
                                                                                                                  xml += "%s"%txml

                                                                                                              if module.ROOT_PREFIX:
                                                                                                                  xml += module.ROOT_PREFIX

                                                                                                              if ffcgi.cgi_check_name("cmd") and ffcgi.cgi_value("cmd")=="add":
                                                                                                                  xml += "<%s />"%module.ROOT
                                                                                                              elif ffcgi.cgi_check_name("format"):
                                                                                                                  # output format JSON
                                                                                                                  try:
                                                                                                                      from json import dumps
                                                                                                                  except:
                                                                                                                      from simplejson import dumps
                                                                                                                  json_data = {module.ROOT:  [exec_sql_json(module, data, sql = module.SQL[i][1], root = module.SQL[i][0]) for i in range(0, len(module.SQL))][0]}
                                                                                                                  print dumps( json_data )
                                                                                                                  return
                                                                                                              else:
                                                                                                                  if type(module.SQL)==str:
                                                                                                                      xml += exec_sql(module, data, module.SQL, module.ROOT)
                                                                                                                  else:
                                                                                                                      xml += "<%s>%s"%(module.ROOT, "\n\t\t".join([exec_sql(module, data, sql = module.SQL[i][1], root = module.SQL[i][0]) for i in range(0, len(module.SQL))]), module.ROOT)



                                                                                                              if ffcgi.cgi_check_name("dbg"):
                                                                                                                  xml += bd_sql.history()

                                                                                                              if ffcgi.cgi_check_name("src"):
                                                                                                                  def make_source(filename):
                                                                                                                      return filename, libs.make_str_cdata(open(".".join(filename.split('.')[:-1])+".py").read().replace(" "," "))
                                                                                                                  xml += "%s%s"%make_source(module.__file__)
                                                                                                                  xml += "%s%s"%make_source(__file__)


                                                                                                              xml = "%s"%xml.replace('\0','')
                                                                                                              libs.save_xml(xml, module.__file__ )

                                                                                                              try:
                                                                                                                  print xml_xsl_proc(xml,fxsl=module.XSL_TEMPLATE)
                                                                                                              except Exception, e:
                                                                                                                  print e

                                                                                                          else:
                                                                                                              print "no define module"
                                                                                                          return 0

                                                                                                      if __name__ == '__main__':
                                                                                                          try:
                                                                                                              main()
                                                                                                          except Exception, e:
                                                                                                                  print e

                                                                                                      Отладочная информация

                                                                                                      список sql запросов страницы

                                                                                                      1. INSERT INTO session (UID,HASH,REFERER,UAGENT,date,id_domen) VALUES(0,'guest3274607333091903895','','webkit/None',now(),@id_domen)#созадём новую сессию для ананимоуса
                                                                                                      2. select @DELO_ID:=D.KOD as DELO_ID,FOND_ID, O.*,DS.*,D.*,U.FIO, (select count(*) from list_nagrada LN where DS.DELO_ID=LN.DELO_ID)as count_nagrada, (select count(*) from digital_image dim where DS.DELO_ID=dim.DELO_ID)as count_dig_img from DELO D left join delo_sys DS on (D.KOD=DS.DELO_ID) left join opis O on (OPIS=O.OPIS_ID) left join users U on (uid=U.id) WHERE `OPIS_ID`='46504' limit 0,25;#Дело
                                                                                                      3. select * from rubrikator_links_sys where `item_id`=@DELO_ID and `plugins_name`='delo_list';#Дело

                                                                                                      список CGI параметров

                                                                                                      параметр значение
                                                                                                      src show
                                                                                                      OPIS_ID 46504
                                                                                                      dbg show
                                                                                                      plugins delo_show