[an error occurred while processing this directive]

Add to favorites

Search

[an error occurred while processing this directive]
Catalogue
"Internet for women!"

More that 1850 annotated links on "Women and society"
issue (on Russian). Link of the week:
International women's movement news(on English)

Magazine
"Woman Plus...".

Issue 3.2002(English texts). This edition is attempt to compensate lack of serious problem press for women.

Publications

The new book: Voronina O.A. Feminism and gender equality. M.URSS, 2004.

30-03-2004 .

  The book is devoted to the social - philosophical analysis of concepts of equality and distinctions of women and men in feminism, and also to development of the concept of gender equality. The book fills a significant blank in the analysis of the major social theories of the modernity and will be certainly useful to scientific employees, politics and public figures, teachers, post-graduate students and students.
Details...

Documents

National plan of activities aimed at improvement of women’s situation and increasing of their role in the social life on 2001-2005 (only on Russian)
Details...

Newsletter
"Vestnichka ICIWF"

Last information issue (only on Russian)

Fundraising

Place for your information!

20-10-2003 "Woman&Society" portal admin

  We would be glad to dispose here your declarations about wishes for the joint projects, as well information about funds, which support NGOs activity in CIS countries. Thanks!
Details...

Womens organizations

Results of activity under the Project "Creation of the Regional Center of Preventive maintenance of violence" for the period from January, 1, till December, 31, 2003 (support of Ford Foundation)

30-03-2004 .

  The purpose of this Project - the organization of the Regional Center of Preventive maintenance of Violence over the Irkutsk Crisis center for women. Results of realization of the Project: 1. Creation of the Regional Center of Preventive maintenance of Violence over the Irkutsk Crisis center. 2. Development and deepening of work with professional communities on preventive maintenance of violence over Irkutsk and Irkutsk area and distribution of this experience through the Coalition of the Crisis centers of Siberia and the Far East. 3. Carrying out of seminars on a problem of violence over workers of the Crisis centers and representatives of professional communities. 4. The Publishing of methodical manuals on a problem of violence over the Crisis centers and professional communities.
Details...

Vital Voices

Informational space for activists of the Russian women's movement, business and politics. Details...

Art

New on the site "Women and innovation in Russia" (January 2004)

11-02-2004 A. Alchuk.

  New articles of Abalakova Natalia Borisovna and Sigej Sergey.
Details...

Russian womens movement news

The State Duma ratified the Convention of the United Nations against transnational criminality

30-03-2004 .

  As correspondent of "Rosbalt" says, the document was supported unanimously by 417 deputies. Having approved the Convention of the United Nations, deputies ratified two reports supplementing it: "About suppression of trade by people, it is especial women and children", and punishment for it and "About counteraction to illegal import of migrants by overland, sea and air".
Details...

The public women's chamber is created at the governor of the Chelyabinsk area

30-03-2004  

  Among priority directions of activity of chamber - creation of necessary conditions for realization in the Chelyabinsk area of the constitutional principle of equality of men and women, strengthening of a role of family in a society and improvement of quality of its life, is informed by the press-service of the governor of the Chelyabinsk area.
Details...

Cyril Poljakov - chairman of Legislative assembly of Leningrad region has compared women - members of parliament with censorship

30-03-2004 .

  Now in Legislative assembly of Leningrad region there are 4 women and 46 men. And, as Cyril Poljakov has emphasized, "the percent of women participating in election campaign is approximately equal to percent past in parliament".
Details...

Assistance

Gender examination of the Ukrainian legislation

03-03-2004 .

  By inquiry of the Ministry of Justice of Ukraine, the international public organization "International fund "Panna" prepares on examination of acts of Ukraine concerning to maintenance of the equal rights and opportunities of women and men (gender examination) for the offers to Ministry of Justice with the purpose of reduction of the Ukrainian legislation conformity with the international acts and declarations. We ask other organizations and the persons specializing in the field of a gender problematics and gender examination to send the offers to our address fondpanna@mail.ru. Deadline for acceptance of offers - on March, 1.
Details...

International womens movement news

The program for Women - Peacemakers

30-03-2004 .

  This program is intended for women - leaders who would like to write and to share the unique experience of peacemaker. Flight, residing and the small grant on 8 weeks term of the program is paid for the selected candidates. All details can be read in English on a site http://peace.sandiego.edu
Details...

The Pan-African parliament has selected the first president the woman on March, 18

30-03-2004 .

  Pan African parliament has accepted the oath and has selected the first president the woman, the representative of Tanzania - Gertruda Mongella.
Details...

By the speaker of parliament of Greece the woman for the first time is elected

30-03-2004 .

  Anna Psaruda-Benaki (lawyer) has a scientific degree of the doctor of criminal law, the professor. Since 1980th years is the deputy of the Greek parliament. In government Kostasa Mitsotakisa in 1990-1993 held posts of minister of culture and Minister of Justice.
Details...

Announcements

The union of journalists of Russia declares the Second national journalistic competition "Authority is national"

23-03-2004 .

  To participation in competition of publications about local self-management in new legislative conditions republican, regional, regional mass media are invited.
Details...

Civil society news

10-years anniversary of Moscow branch of Human Rights Watch

30-03-2004 .

  Human Rights Watch carries out careful investigations of infringements of human rights, calls for the responsibility of authority and, thanking to interaction with the governments and the international organizations, the nongovernmental organizations and the mass-media, promotes development of a viable civil society.
Details...

The general information about means of the international protection of human rights

30-03-2004 .

  The constitution of Russia has conceded a right to the citizen to address in interstate (international) bodies on protection of the rights and freedom of the person and the citizen if all interstate means of a legal protection have been settled. Such bodies according to the international contracts of the Russian Federation are Committee of the United Nations under human rights (Geneva) and the European court under human rights (Strasbourg).
Details...

The ombudsmen in the Russian Federation Vladimir Lukin has determined tasks for institute of ombudsmen in regions

23-03-2004 .

  "The sense of our work will be to approve democratic, political and social rights of citizens of Russia. Defenders of human rights in Russia always existed, they reduced break between authority and simple citizens. One of the main tasks of institute today will be to create system which will be connected to the law at which all our country will be covered with a network of ombudsmen", - has noted Лукин.
Details...

Content of "Women & Society" portal

Catalogue "Internet for women!" (Rus)
Magazine "Woman Plus!"(Eng)
last issue, archive (1996-2002)
Publications
researches, catalogues and reference books, conference materials, periodical press, new books, on-line bibliographic data base
Documents
International, Russian
Forums

News
Russian, International, Announcements, portal updates
Women's organizations
Fundraising
Women's Internet society
Art
Vital Voices
About us
Archive OWL (1997-2000)

Projects of RPO "East-West: ZhIP"
Unna Morits - official site Women in partnership: policy-business-society
About us

Regional public organization "East-West: Women's Innovation Projects"

Registration certificate
SMI El№ 77-2768

Forums on the portal

Already open forum for developing of international collaboration for joint projects
Details...

Important, urgently, interestingly

USA: Internet was a women's face

30-03-2004 .

  For today almost 75 % of inhabitants the USA have domestic access in the Internet, and women - users have bypassed men on all parameters and in all age categories.
Details...

Open pages

The former USSR. Geography of the slavery

23-03-2004 Washington ProFile

  From all countries of the former USSR only in Lithuania modern slavers feel like in danger, and their victims can receive the sufficient help from authorities. In other countries of the former USSR the situation remains to the heaviest though and gradually improves. The basic conclusions made by experts of State department USA\State Department are those. Authors of the report estimated a situation developed in 2002-2003.
Details...

Your voice!
#!/usr/bin/perl -w use CGI; use Poll::Config; use strict; my $buffer; my $input = new CGI (); my %infa; my %allll; $infa{script} = $ENV{SCRIPT_NAME}; #переменная $input->param("show_result") - разрешить просмотр без голосования #переменная $input->param("theme_name") - id темы #переменная $input->param("quest_id") - id вопроса #переменная $input->param("show_res") - выводить результат или опрос print "Content-type: text/html\n"; if ($input->param("quest_id") ne "all") { if ($input->param("theme_name") && $input->param("quest_id") && !$input->param("show_res") && !$input->param("action")) { &show_simple_quest(0)} if ($input->param("theme_name") && $input->param("quest_id") && $input->param("show_res") && !$input->param("action")) { &show_simple_quest(1)} if ($input->param("theme_name") && !$input->param("quest_id") && $input->param("show_res") && !$input->param("action")) { &show_simple_quest(2)} if ($input->param("theme_name") && !$input->param("quest_id") && !$input->param("show_res") && !$input->param("action")) { &show_simple_quest(3)} if (!$input->param("theme_name") && $input->param("quest_id") && !$input->param("show_res") && !$input->param("action")) { &show_simple_quest(4)} if (!$input->param("theme_name") && $input->param("quest_id") && $input->param("show_res") && !$input->param("action")) { &show_simple_quest(5)} if (!$input->param("theme_name") && !$input->param("quest_id") && !$input->param("show_res") && !$input->param("action")) { &show_simple_quest(6)} if (!$input->param("theme_name") && !$input->param("quest_id") && $input->param("show_res") && !$input->param("action")) { &show_simple_quest(7)} } if (!$input->param("theme_name") &&($input->param("quest_id") eq "all") && !$input->param("action")) { &show_all} if ($input->param("theme_name") && ($input->param("quest_id") eq "all") && !$input->param("action")) { &show_theme_all} if ($input->param("action") eq "surv_all") { &surv_all} #Проголосовал if ($input->param("action") eq "volt") {&volt} if ($input->param("action") eq "show_res") { &show_res} sub show_simple_quest { my $mode = shift; my $id; my $theme_name; my %themes_hash; if ($mode == 0)#110 { $id = $input->param("quest_id"); $theme_name = get_theme_name ($input->param("theme_name")); }elsif ($mode == 4)#010 { dbmopen (%themes_hash, "$themes_dbm",0666) || die "cannot open dbmfile $themes_dbm: $!"; $id = $input->param("quest_id"); $theme_name = $themes_hash{$id}; dbmclose (%themes_hash); } elsif ($mode == 5)#011 { dbmopen (%themes_hash, "$themes_dbm",0666) || die "cannot open dbmfile $themes_dbm: $!"; $id = $input->param("quest_id"); $theme_name = $themes_hash{$id}; dbmclose (%themes_hash); &create_quest ($id,$theme_name); #Создаем html опроса } if ($mode == 0 or $mode == 4) { if (&inspect_user($id)) { &show_result ($id,$theme_name); #Показываем результат }else { &create_quest ($id,$theme_name); #Создаем html опроса } } if ($mode == 6)#000 { dbmopen (%themes_hash, "$themes_dbm",0666) || die "cannot open dbmfile $themes_dbm: $!"; my $k=0; my $show_id; my $show_theme; my %tmpHash; my @data_array; while ((my $key,my $value) = each %themes_hash) { unless ($key eq $value) { push (@data_array,$key); } } my $len = $#data_array+1; my $id; my @use_array; my $end=0; while (1) { my $rnd = rand ($len); $rnd = int ($rnd); $id = $data_array[$rnd]; unless (&inspect_user($id)) { $end=0; last; }else { push (@use_array,$id); @use_array = clear_array(\@use_array); if (compare_arrays (\@use_array,\@data_array)) { $end=1; last; } } } if ($end) { my @id_array; while ((my $key, my $value) = each %themes_hash) { unless ($key eq $value) { push (@id_array,$key); } } my $len = $#id_array+1; my $rnd = rand ($len); $rnd = int ($rnd); $id = $id_array[$rnd]; $theme_name = $themes_hash{$id}; dbmclose (%themes_hash); &show_result ($id,$theme_name); #Показываем результат }else { $theme_name = $themes_hash{$id}; &create_quest ($id,$theme_name); #Создаем html опроса dbmclose (%themes_hash); } }elsif ($mode == 3)#100 { $theme_name = get_theme_name ($input->param("theme_name")); dbmopen (%themes_hash, "$themes_dbm",0666) || die "cannot open dbmfile $themes_dbm: $!"; my @data_array; while ((my $key, my $value) = each %themes_hash) { unless ($key eq $value) { if ($value eq $theme_name) { push (@data_array,$key); } } } my $len = $#data_array+1; my $id; my @use_array; my $end=0; while (1) { my $rnd = rand ($len); $rnd = int ($rnd); $id = $data_array[$rnd]; unless (&inspect_user($id)) { $end=0; last; }else { push (@use_array,$id); @use_array = clear_array(\@use_array); if (compare_arrays (\@use_array,\@data_array)) { $end=1; last; } } } if ($end) { my @id_array; while ((my $key, my $value) = each %themes_hash) { unless ($key eq $value) { if ($value eq $theme_name) { push (@id_array,$key); } } } my $len = $#id_array+1; my $rnd = rand ($len); $rnd = int ($rnd); $id = $id_array[$rnd]; dbmclose (%themes_hash); &show_result ($id,$theme_name); #Показываем результат }else { $theme_name = $themes_hash{$id}; &create_quest ($id,$theme_name); #Создаем html опроса dbmclose (%themes_hash); } }elsif ($mode == 7)#001 { dbmopen (%themes_hash, "$themes_dbm",0666) || die "cannot open dbmfile $themes_dbm: $!"; my @id_array; while ((my $key, my $value) = each %themes_hash) { unless ($key eq $value) { push (@id_array,$key); } } my $len = $#id_array+1; my $rnd = rand ($len); $rnd = int ($rnd); $id = $id_array[$rnd]; $theme_name = $themes_hash{$id}; dbmclose (%themes_hash); &show_result ($id,$theme_name); #Показываем результат }elsif ($mode == 2)#101 { dbmopen (%themes_hash, "$themes_dbm",0666) || die "cannot open dbmfile $themes_dbm: $!"; $theme_name = get_theme_name ($input->param("theme_name")); my @id_array; while ((my $key, my $value) = each %themes_hash) { if ($value eq $theme_name) { unless ($key eq $value) { push (@id_array,$key); } } } my $len = $#id_array+1; my $rnd = rand ($len); $rnd = int ($rnd); $id = $id_array[$rnd]; dbmclose (%themes_hash); &show_result ($id,$theme_name); #Показываем результат }elsif ($mode == 1)#111 { $id = $input->param("quest_id"); $theme_name = get_theme_name ($input->param("theme_name")); &show_result ($id,$theme_name); #Показываем результат } } #Создает html для sub create_quest { my $id = shift; my $theme_name = $_[0]; my $fmt = [['name','mode','checked','value']]; $infa{'id'} = $id; $infa{'theme_id'} = $theme_name; $infa{'tname'} = $theme_name; open (DATA, "$data_location/$id.txt") or warn("Unable to create the data file"); if ($flock eq "y") { flock DATA, 2; } my $quest = ; chomp ($quest); my @quest_array = split (/\|/,$quest); $quest = $quest_array [0]; my $multi = $quest_array [1]; $infa {'quest'} = $quest; $infa {'multi_param'} = $multi; my $i=0; if ($multi) { $infa{'multi'} = "checkbox"; }else { $infa{'multi'} = "radio"; } while (my $line = ) { chomp ($line); my @ar = split (/\|/,$line); $line = $ar[0]; my $num = $id."_".$i; unless ($multi) { push (@$fmt,[$num,"mode",$i==0?'CHECKED':'',$line]); }else { push (@$fmt,[$num,"mode_$i",'',$line]); } $i++; } $infa{'count'} = $i; close (DATA); my %nav; if ($input->param("show_result")) { $nav{"show_simple"} = 1; }else { $nav{"show_simple"} = 0; } my $obj = View_HTML->new($quest_dir.$quest_templ); $obj->load(); $obj->{if_no_field} = ''; $allll{'conf'} = $fmt; $infa{cook_action} = "set_answer"; $infa{ccexp} = 48*3600000; $infa{ccpath}='/'; $obj->subst_comments(\%infa); $obj->subst_blocks( \%nav); $obj->subst_formats(%allll); print "Content-type: text/html\n\n"; $obj->print; exit; } #Функция проверяет отвечал ли пользователь на вопрос по его ip-адресу #Возвращает 1 если отвечал, else - 0. sub inspect_user { my $id = shift; return 0; if ($ip_logging == 1) { my $visitor = &get_user_param; open (IP, "$data_location/ip.txt") or warn("Unable to open the data file- ip.txt"); if ($flock eq "y") { flock IP, 2; } my @ip=; close(IP); foreach my $ip(@ip) { chomp($ip); my @dip=split(/\|/, $ip); if (($dip[0] eq $visitor)&&($dip[1] == $id)) { return 1; } } return 0; } } #Типа проголосовал sub volt { my $id = $input->param("id"); my $theme_name = $input->param("theme_id"); my $count = $input->param("count"); my @sel_array; my $multi = $input->param("multi"); my $sel_num; if ($multi) #multiselect defined { for (my $i=0;$i<$count;$i++) { if (defined ($input->param("mode_$i"))) { push (@sel_array,$i); } } }else { my $select = $input->param("mode"); @sel_array = split (/_/,$select); $sel_num = $sel_array[1]; } unless (&inspect_user($id)) { #&save_ip ($id); open (DATA, "$data_location/$id.txt") or warn "Unable to create the data file"; if ($flock eq "y") { flock DATA, 2; } my $quest = ; chomp ($quest); my @data_array; unless ($multi) #SINGLE SELECT { my $i=0; while (my $line = ) { chomp ($line); if ($i==$sel_num) { my @ar = split (/\|/,$line); my $otv = $ar[0]; my $count = $ar[1]; $count++; $line = $otv."\|".$count; } push (@data_array,$line); $i++; } }else #MULTISELECT { my $i=0; while (my $line = ) { chomp ($line); if (array_search (\@sel_array,$i)) { my @ar = split (/\|/,$line); my $otv = $ar[0]; my $count = $ar[1]; $count++; $line = $otv."\|".$count; } push (@data_array,$line); $i++; } } close (DATA); chmod (0664,"$data_location/$id.txt"); open (DATA, ">$data_location/$id.txt") or warn "Unable to create the data file"; if ($flock eq "y") { flock DATA, 2; } print DATA $quest."\n"; foreach my $line (@data_array) { print DATA $line."\n"; } close (DATA); } #Здесь был вывод результата голосования, но так как сказал Леонид, используем куки # &show_result ($id,$theme_name,-1); my $docReferer = $ENV{'HTTP_REFERER'}; my %themes_hash; $docReferer =~ s/\?.*$//; $theme_name = get_theme_id ($theme_name); $docReferer.="?quest_id=$id&show_res=1&theme_name=$theme_name"; print "Location: $docReferer\n\n"; #$input->param("quest_id") && !$input->param("show_res") } #Функция возвращает хэш полей и данных формы sub get_param_hash () { my %hash; foreach my $item ($input->param) { foreach my $item1 ($input->param($item)) { $hash{$item}=$item1; } } return %hash; } #Функция сохраняет в файл ip адрес пользователя и id вопроса, на который он ответил. sub save_ip { my $id = shift; if ($ip_logging == 1) { my $visitor = &get_user_param; chmod (0664,"$data_location/ip.txt"); open (IP, ">>$data_location/ip.txt") or warn "Unable to open the data file- ip.txt"; if ($flock eq "y") { flock IP, 2; } print IP $visitor."\|".$id."\n"; close(IP); } } #Функция показывает результаты голосования sub show_result { my $id = shift; my $theme_name = $_[0]; open (DATA, "$data_location/$id.txt") or warn("Unable to open the survey data file."); if ($flock eq "y") { flock DATA, 2; } my $count=0; #Общее количество ответов my $line = ; while ($line = ) { chomp ($line); my @data_array = split (/\|/,$line); if (defined ($data_array[1])) { $count+=$data_array[1]; } } close(DATA); open (DATA, "$data_location/$id.txt") or warn("Unable to open the survey data file."); if ($flock eq "y") { flock DATA, 2; } my $quest = ; chomp ($quest); my @quest_array = split (/\|/,$quest); $quest = $quest_array [0]; $infa{'quest'} = $quest; $infa{'id'} = $id; $infa{'tname'} = $theme_name; $infa{'all'} = $count; my $fmt = [['name','image','percent','value']]; while (my $line = ) { chomp ($line); my @data_array = split (/\|/,$line); my $cal; unless ($count == 0) { $cal = $data_array[1]/$count; }else { $cal=0; } my $percent = int (100*$cal); #my $percent = sprintf ("%.2f",100*$cal); push (@$fmt,[$data_array[0],$bar,$percent,$data_array[1]]); } close(DATA); my $obj = View_HTML->new($quest_dir.$result_templ); $obj->load(); $obj->{if_no_field} = ''; $allll{'conf'} = $fmt; $infa{cook_action} = "quest"; $infa{ccexp} = 48*360000; $infa{ccpath}='/'; $infa{id} = $id; $obj->subst_comments(\%infa); $obj->subst_formats(%allll); # print "Location: /about/index.shtml\n\n"; # print "Content-type: text/html\n\n"; print "\n"; $obj->print; exit; } sub show_all { my %themes_hash; my $fmt = [['theme_name','quest','script','quest_id','theme_name1']]; dbmopen (%themes_hash, "$themes_dbm",0666) || die "cannot open dbmfile $themes_dbm: $!"; my %tmpHash; while ((my $key, my $value) = each %themes_hash) { push (@{$tmpHash{$value}},$key); } while ((my $key, my $value) = each %tmpHash) { my @array = @$value; my $namet = get_theme_id ($key); push (@$fmt,['head',$key,'','','','']); foreach my $item (@array) { unless ($item eq $key) { open (DATA, "$data_location/$item.txt") or warn("Unable to open the survey data file."); if ($flock eq "y") { flock DATA, 2; } my $quest = ; chomp ($quest); my @quest_array = split (/\|/,$quest); $quest = $quest_array[0]; #$key = get_theme_id ($key); push (@$fmt,['head1',$key,$quest,$ENV{SCRIPT_NAME},$item,$namet]); close (DATA); } } } my $obj = View_HTML->new($quest_dir.$all_templ); $obj->load(); $obj->{if_no_field} = ''; $infa{ccexp} = 48*3600000; $infa{ccpath}='/'; $obj->subst_comments(\%infa); $obj->subst_formats( 'good' => $fmt ); print "\n"; $obj->print; dbmclose (%themes_hash); } #Голосование из таблицы вопросов sub surv_all { my $docReferer = $ENV{'HTTP_REFERER'}; my %themes_hash; my $id = $input->param("quest_id"); my $theme_name = $input->param("theme"); my $show_res; unless (&inspect_user($id)) { $show_res=0; }else {$show_res=1} $docReferer =~ s/\?.*$//; $docReferer.="?quest_id=$id&show_res=$show_res&theme_name=$theme_name"; print "Location: $docReferer\n\n"; } #Показывает все вопросы заданной темы sub show_theme_all { my %themes_hash; my $theme_name = $input->param("theme_name"); my $fmt = [['theme_name','quest','script','quest_id']]; dbmopen (%themes_hash, "$themes_dbm",0666) || die "cannot open dbmfile $themes_dbm: $!"; my %tmpHash; while ((my $key, my $value) = each %themes_hash) { if ($value eq $theme_name) { push (@{$tmpHash{$value}},$key); } } my @array = @{$tmpHash{$theme_name}}; push (@$fmt,['head',$theme_name,'','','']); foreach my $item (@array) { unless ($item eq $theme_name) { open (DATA, "$data_location/$item.txt") or warn("Unable to open the survey data file."); if ($flock eq "y") { flock DATA, 2; } my $quest = ; chomp ($quest); my @quest_array = split (/\|/,$quest); $quest = $quest_array [0]; push (@$fmt,['head1',$theme_name,$quest,$ENV{SCRIPT_NAME},$item]); close (DATA); } } dbmclose (%themes_hash); my $obj = View_HTML->new($quest_dir.$all_templ); $obj->load(); $obj->{if_no_field} = ''; $infa{ccexp} = 48*3600000; $infa{ccpath}='/'; $obj->subst_comments(\%infa); $obj->subst_formats( 'good' => $fmt ); print "Content-type: text/html\n\n"; $obj->print; } #Показ результатов опроса без голосования sub show_res { show_result ($input->param("quest_id"),$input->param("themes_id")); } sub compare_arrays { my $point1 = shift; my $point2 = $_[0]; my @array1 = @$point1; my @array2 = @$point2; my $flag=0; my $len1 = $#array1+1; my $len2 = $#array2+1; if ($len1 ne $len2) { return 0; } foreach my $item (@array1) { $flag=0; foreach my $item1(@array2) { if ($item eq $item1) { $flag++; } } unless ($flag) { return 0; } } return 1; } #Удаляет повторяющиеся элементы списка sub clear_array { my $pArray = shift; my @list = @$pArray; my %seen = (); my @uniq; foreach my $item (@list) { unless (exists( $seen{$item})) { $seen{$item} = 1; push (@uniq, $item); } } return @uniq; } #Проверяет значение куков #Первый параметр - id вопроса #Второй параметр - действие #set - установить куку action в 1 #reset - установить куку action в 0 sub get_user_param { my $ip; my $user_id; my $browser; my $proxy = $ENV{'HTTP_VIA'}; if($proxy) #у человека стоит прокси сервер { my $ip_from_proxy = $ENV{'HTTP_X_FORWARDED_FOR'}; if($ip_from_proxy) # неанонимный прокси сервер { $ip = $ip_from_proxy; } else # анонимный прокси сервер, делать нечего, воспользуемся тем, что есть { $ip = $ENV{'REMOTE_ADDR'}; } } else { $ip = $ENV{'REMOTE_ADDR'}; } $browser = $ENV{'HTTP_USER_AGENT'}; $user_id = $ip.$browser; return $user_id; } #Подпрограмма возвращает название темы по id sub get_theme_name { my $them_id = shift; my %themeid_hash; dbmopen (%themeid_hash, "$themeid_dbm",0666) || die "cannot open dbmfile $themeid_dbm: $!"; while ((my $key, my $value) = each %themeid_hash) { if ($value eq $them_id) { return $key; } } dbmclose (%themeid_hash); return 0; } #Подпрограмма возвращает название темы по id sub get_theme_id { my $them_id = shift; my %themeid_hash; dbmopen (%themeid_hash, "$themeid_dbm",0666) || die "cannot open dbmfile $themeid_dbm: $!"; my $id = $themeid_hash{$them_id}; dbmclose (%themeid_hash); return $id; } sub array_search { my $ref = shift; my @array = @$ref; my $param = $_[0]; foreach my $data (@array) { if ($data eq $param) { return 1; } } return 0; }
Women's
Internet society

This site enabled in
1st Women Webring

Full list
<Previous*Next>
RingMaster

Our friends and partners


Henrich Bell Fond, Berlin


Information Center of the Independent Women's Forum (Eng)


(Eng)

(Rus)


The Consortium of women's NGOs (Eng)


Union of Russian women (Rus)

mamacash border=0
[an error occurred while processing this directive]

mamacash October 2003 - March 2004 supported by Mama Cash
English version of portal created with financial support of Women's Network Program of Open Society Institute (Soros Foundation).

ROO "East-West: Women's Innovation Projects"
E-mail: zhip@owl.ru
© 2001 Design site:
Company Internet Project
© Pictures: Ivan Maksimov